Tanya Lattner
2008-Mar-30 22:45 UTC
[LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
On Mar 30, 2008, at 12:39 PM, Joachim Durchholz wrote:> > Am Sonntag, den 30.03.2008, 10:28 -0700 schrieb Tanya Lattner: >> On Mar 30, 2008, at 10:07 AM, Joachim Durchholz wrote: >>> Look at how $LLVM_CONFIGURE is built, the final value is >>> >>> --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu >>> --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu" >>> >> >> This looks likes its missing some stuff. Make sure the configure line >> is exactly as what is in README.LLVM. > > OK, I now have > > LLVM_VERSION_INFO=kurier-bootstrap /home/jo/llvm-gcc-src/configure > --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu > --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu > --enable-llvm=/home/jo --enable-languages=c,c++ >Where have you built llvm? The enable-llvm dir should point to where you built llvm.> The --enable-llvm directory is the same as --prefix, I hope that's > right > (the actual binaries are in the 'bin' subdirectory). > > I don't think --enable-checking should be necessary, I had > llvm ./configure'd with --enable-optimized (I hope that's the same as > specifying ENABLE_OPTIMIZED=1 during the 'make' run for LLVM proper). >You have to build both a release build of LLVM and llvm-gcc or both debug. You can't mix. So if you did --enable-checking that Debug. SVN by default is debug. A release of LLVM is release by default. I think --enable-optimized and ENABLE_OPTIMIZED=1 are the same, so you should be ok.> Trying with OPTIMIZE_OPTION=-O2 didn't help. > > Anything else I may have overlooked? >I'm guessing its your --enable-llvm setting. Hope that helps.. -Tanya> Regards, > Jo > > > P.S.: Rerunning the failing command with -v gave me > > GNU C version 4.2.1 (Based on Apple Inc. build 5555) (LLVM build) > (i686-pc-linux-gnu) > compiled by GNU C version 4.2.1 (Ubuntu 4.2.1-5ubuntu4). > > so it seems to call the right compiler, but I still get > > /home/jo/llvm-gcc-wrk/./gcc/as --traditional-format -V -Qy -o > crtbegin.o crtstuff.s > GNU assembler version 2.18 (x86_64-linux-gnu) using BFD version (GNU > Binutils for Ubuntu) 2.18 > crtstuff.s: Assembler messages: > crtstuff.s:15: Error: suffix or operands invalid for `push' > crtstuff.s:29: Error: suffix or operands invalid for `call' > crtstuff.s:36: Error: suffix or operands invalid for `pop' > crtstuff.s:39: Error: suffix or operands invalid for `pop' > crtstuff.s:47: Error: suffix or operands invalid for `push' > crtstuff.s:60: Error: suffix or operands invalid for `call' > crtstuff.s:63: Error: suffix or operands invalid for `pop' > > (As noted in one of my previous mails, .../gcc/as is just a > shellscript > calling the installed as, which happens to be GNU as.) > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Joachim Durchholz
2008-Mar-31 06:22 UTC
[LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
Am Sonntag, den 30.03.2008, 15:45 -0700 schrieb Tanya Lattner:> On Mar 30, 2008, at 12:39 PM, Joachim Durchholz wrote: > > > > > Am Sonntag, den 30.03.2008, 10:28 -0700 schrieb Tanya Lattner: > >> On Mar 30, 2008, at 10:07 AM, Joachim Durchholz wrote: > >>> Look at how $LLVM_CONFIGURE is built, the final value is > >>> > >>> --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu > >>> --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu" > >>> > >> > >> This looks likes its missing some stuff. Make sure the configure line > >> is exactly as what is in README.LLVM. > > > > OK, I now have > > > > LLVM_VERSION_INFO=kurier-bootstrap /home/jo/llvm-gcc-src/configure > > --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu > > --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu > > --enable-llvm=/home/jo --enable-languages=c,c++ > > > > Where have you built llvm? The enable-llvm dir should point to where > you built llvm.The --prefix for LLVM and LLVM-GCC is the same, /home/jo. IOW the LLVM binaries are in /home/jo/bin. I'll try with --enable-llvm=/home/jo/bin today.> > The --enable-llvm directory is the same as --prefix, I hope that's > > right > > (the actual binaries are in the 'bin' subdirectory). > > > > I don't think --enable-checking should be necessary, I had > > llvm ./configure'd with --enable-optimized (I hope that's the same as > > specifying ENABLE_OPTIMIZED=1 during the 'make' run for LLVM proper). > > > > You have to build both a release build of LLVM and llvm-gcc or both > debug. You can't mix. So if you did --enable-checking that Debug. SVN > by default is debug.Yup, I'm aware of that. I use the SVN sources, but apply --enable-optimized for both builds, so this should be OK. Regards, Jo
Tanya Lattner
2008-Mar-31 07:02 UTC
[LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
On Mar 30, 2008, at 11:22 PM, Joachim Durchholz wrote:> > Am Sonntag, den 30.03.2008, 15:45 -0700 schrieb Tanya Lattner: >> On Mar 30, 2008, at 12:39 PM, Joachim Durchholz wrote: >> >>> >>> Am Sonntag, den 30.03.2008, 10:28 -0700 schrieb Tanya Lattner: >>>> On Mar 30, 2008, at 10:07 AM, Joachim Durchholz wrote: >>>>> Look at how $LLVM_CONFIGURE is built, the final value is >>>>> >>>>> --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu >>>>> --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu" >>>>> >>>> >>>> This looks likes its missing some stuff. Make sure the configure >>>> line >>>> is exactly as what is in README.LLVM. >>> >>> OK, I now have >>> >>> LLVM_VERSION_INFO=kurier-bootstrap /home/jo/llvm-gcc-src/configure >>> --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu >>> --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu >>> --enable-llvm=/home/jo --enable-languages=c,c++ >>> >> >> Where have you built llvm? The enable-llvm dir should point to where >> you built llvm. > > The --prefix for LLVM and LLVM-GCC is the same, /home/jo. > IOW the LLVM binaries are in /home/jo/bin. > I'll try with --enable-llvm=/home/jo/bin today. >No, not where the binaries are, but I think it should point to where the libraries are. I don't usually do an install, so maybe someone else can comment on this. -Tanya>>> The --enable-llvm directory is the same as --prefix, I hope that's >>> right >>> (the actual binaries are in the 'bin' subdirectory). >>> >>> I don't think --enable-checking should be necessary, I had >>> llvm ./configure'd with --enable-optimized (I hope that's the same >>> as >>> specifying ENABLE_OPTIMIZED=1 during the 'make' run for LLVM >>> proper). >>> >> >> You have to build both a release build of LLVM and llvm-gcc or both >> debug. You can't mix. So if you did --enable-checking that Debug. SVN >> by default is debug. > > Yup, I'm aware of that. > I use the SVN sources, but apply --enable-optimized for both builds, > so > this should be OK. > > Regards, > Jo > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Possibly Parallel Threads
- [LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
- [LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
- [LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
- [LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps
- [LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps