|Subject:||Re: [Liberty-eiffel] Bug #44601|
|Date:||Wed, 15 Jun 2016 19:02:53 +0200|
I am confused. I understand what compile_to_c does and what it is used for. Yet in the install.sh we have code that isexpecting compile_to_c.new, in the "Bootstrapping SmartEiffel Tools" section, for T1 and T2.According to the "-help" output of ./compile_to_c:-o <file> Put the executable program into <file>And that is exactly what it does. The compile_to_c.make file that is created, will have a line in it like the following:gcc -pipe -O2 -c -x c compile_to_c1.c# End of parallelizable sectiongcc -Xlinker -no-as-needed -o compile_to_c.new compile_to_c1.o compile_to_c2.o ...strip compile_to_c.newSo -o is used and the name of the given executable is used in the strip command as well. I got this based on looking atwhat happens on a Linux system. Its an old 400MHz PowerPC based G4 PowerMac running Debian. The builds take anextremely long time, but I am able to observe things a little better while the build is going on. :) Sometimes slow and old is good.When I look at the compile_to_c.make that I have, I don't even have anything for parallelisation. Just the linking line, and even that is without the -o option. So I have a bug somewhere in the germ I've created and will have to track it down.Comments ? Thoughts ? Suggestions ?I think I feel a little less confused now that I have seen what the Linux build is doing.cheers,mehulOn Wed, Jun 15, 2016 at 9:59 AM, Cyril ADRIAN <address@hidden> wrote:CyrilCheers,Mehul,
compile_to_c produces C files, not binaries. Those files must be compiled by a C compiler to produce the actual executable file.2016-06-15 15:32 GMT+02:00 Mehul Sanghvi <address@hidden>:So I do the following:cd target/bin/compile_to_c.d./compile_to_c -verbose -boost -no_gc compile_to_c -o compile_to_c.newAnd there is no compile_to_c.new binary generated. I am guessing it should be in the same directory whereI am running the command. Or not ?cheers,mehulOn Mon, Jun 13, 2016 at 10:16 PM, Mehul Sanghvi <address@hidden> wrote:Yes that did the trick. I was able to get a new germ which has support for clang on OSX/Darwin/macOS.The problem I am running into now is that when I run install.sh I am not getting a "compile_to_c.new" generated but the following:progress 30 1 $MAXTOOLCOUNT "T1: compile_to_c"run ./compile_to_c -verbose -boost -no_gc compile_to_c -o compile_to_c.newI have tried running the command manually and it is no different from when being run in the script.The below are results I see before the command completes:Total Number of "inspect" used for Dynamic dispatch: 9129Total Number of Merged "when" clauses (cumulated): 5097Assignment graph: 659 nodes and 2012 transitions.FEATURE_STAMPs total number = 5920FEATURE_STAMPs with rename = 39Total time spent in parser: 00:00.705835Total time spent getting started: 00:00.174095Total time spent specializing one type: 00:14.933290Total time spent specializing and checking: 00:11.650085Total time spent collecting features: 00:00.695697Total time spent inlining dynamic dispatch: 00:01.146237Total time spent simplifying: 00:03.118921Total time spent adapting features: 00:00.222636Total time spent safety checking: 00:00.000058Type-system safety check not performed in this mode(use the -safety_check flag).Done.Writing "compile_to_c.id" file.Aliased STRINGs: 58923.The log file does not have anything that indicates any issues.Thoughts, suggestions ?cheers,mehul--On Mon, Jun 13, 2016 at 2:49 PM, Raphael Mack <address@hidden> wrote:Am Montag, den 13.06.2016, 10:11 -0400 schrieb Mehul Sanghvi:
> Yes that is true.
> Let me re-compile that again. I had run make-germ.sh and it had
> deleted resources/smarteiffel-germ/*.c but nothing that a "git pull"
> can not fix.
> Any other options that I need to be using when compiling compile_2_c
> and generating the germ with clang support ?
should be sufficient. The interesting question is, whether we need
special handling for clang or whether it is sufficiently compatible to
gcc. - But you'll find out and, as the germ code already compiles it
looks good in my eyes.
|[Prev in Thread]||Current Thread||[Next in Thread]|