Problems updating gcc to 4.7.3
Hi, I'm presently doing a fresh install of Crux-3.0. Everything works fine, except the gcc update to 4.7.3. Output ends with these lines: ----------------------------------------------------------------------- checking whether i18n number rewriting support for quadmath_snprintf should be added... yes configure: updating cache ./config.cache checking generated-files-in-srcdir... no configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands config.status: executing default-1 commands Adding multilib support to Makefile in ../../../gcc-4.7.3/libquadmath multidirs=32 with_multisubdir= Running configure in multilib subdirs 32 pwd: /usr/ports/core/gcc/work/src/build/x86_64-unknown-linux-gnu/libquadmath Running configure in multilib subdir 32 pwd: /usr/ports/core/gcc/work/src/build/x86_64-unknown-linux-gnu configure: creating cache ./config.cache checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for --enable-version-specific-runtime-libs... no checking for style of include used by make... GNU checking for x86_64-unknown-linux-gnu-gcc... /usr/ports/core/gcc/work/src/build/./gcc/xgcc -B/usr/ports/core/gcc/work/src/build/./gcc/ -B/usr/x86_64-unknown-linux-gnu/bin/ -B/usr/x86_64-unknown-linux-gnu/lib/ -isystem /usr/x86_64-unknown-linux-gnu/include -isystem /usr/x86_64-unknown-linux-gnu/sys-include -m32 checking for C compiler default output file name... a.out checking whether the C compiler works... configure: error: in `/usr/ports/core/gcc/work/src/build/x86_64-unknown-linux-gnu/32/libquadmath': configure: error: cannot run C compiled programs. If you meant to cross compile, use `--host'. See `config.log' for more details. make[1]: *** [configure-target-libquadmath] Error 1 make[1]: Leaving directory `/usr/ports/core/gcc/work/src/build' make: *** [bootstrap] Error 2 ----------------------------------------------------------------------- Any ideas? It sounds somewhat weird that gcc "can't run C compiled programs"... Regards, Bernd -- http://sudrala.de
On 09.08.2013 17:14, Alan Mizrahi wrote:
I'm presently doing a fresh install of Crux-3.0. Everything works fine,
except the gcc update to 4.7.3. Output ends with these lines:
...
See `config.log' for more details.
Use pkgmk -kw to keep the working directory, then see config.log for more details.
Thanks, Alan. The gzipped config.log is attached. At 2 points a check has failed: Line 195: configure:5668: gcc -o conftest -O2 -march=x86-64 -pipe conftest.c -lpwl -lstdc++ -lm >&5 /usr/bin/ld: cannot find -lpwl Line 226: configure:5708: gcc -c -O2 -march=x86-64 -pipe conftest.c >&5 conftest.c:10:19: fatal error: ppl_c.h: No such file or directory compilation terminated. I guess I miss something, but I couldn't find any port containing libpwl or ppl_c.h . Thanks for any help, Bernd -- http://sudrala.de
On 10/08/13 05:20, Bernd Eggink wrote:
On 09.08.2013 17:14, Alan Mizrahi wrote:
I'm presently doing a fresh install of Crux-3.0. Everything works fine,
except the gcc update to 4.7.3. Output ends with these lines:
...
See `config.log' for more details.
Use pkgmk -kw to keep the working directory, then see config.log for more details.
Thanks, Alan. The gzipped config.log is attached. At 2 points a check has failed:
Line 195: configure:5668: gcc -o conftest -O2 -march=x86-64 -pipe conftest.c -lpwl -lstdc++ -lm >&5 /usr/bin/ld: cannot find -lpwl
Line 226: configure:5708: gcc -c -O2 -march=x86-64 -pipe conftest.c >&5 conftest.c:10:19: fatal error: ppl_c.h: No such file or directory compilation terminated.
I guess I miss something, but I couldn't find any port containing libpwl or ppl_c.h .
Thanks for any help, Bernd
_______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux You do have glibc-32 installed don't you?
On 10.08.2013 09:12, Danny Rawlins wrote:
On 10/08/13 05:20, Bernd Eggink wrote:
On 09.08.2013 17:14, Alan Mizrahi wrote:
I'm presently doing a fresh install of Crux-3.0. Everything works fine,
except the gcc update to 4.7.3. Output ends with these lines:
...
See `config.log' for more details.
Use pkgmk -kw to keep the working directory, then see config.log for more details.
Thanks, Alan. The gzipped config.log is attached. At 2 points a check has failed:
Line 195: configure:5668: gcc -o conftest -O2 -march=x86-64 -pipe conftest.c -lpwl -lstdc++ -lm >&5 /usr/bin/ld: cannot find -lpwl
Line 226: configure:5708: gcc -c -O2 -march=x86-64 -pipe conftest.c >&5 conftest.c:10:19: fatal error: ppl_c.h: No such file or directory compilation terminated.
I guess I miss something, but I couldn't find any port containing libpwl or ppl_c.h .
You do have glibc-32 installed don't you?
Yes, the port that came with the installation CD. I just noticed that it uses kernel headers 3.4.11, while I'm on kernel 3.10.5. Could this be the reason? Bernd -- http://sudrala.de
Bernd Eggink <monoped@sudrala.de> wrote:
Yes, the port that came with the installation CD. I just noticed that it uses kernel headers 3.4.11, while I'm on kernel 3.10.5. Could this be the reason?
Both of the errors in the config.log you posted are Red Herrings. You need to post the config.log from the libquadmath directory, which is where the failure occurred. khm
On 10.08.2013 19:35, Kurt H Maier wrote:
Bernd Eggink <monoped@sudrala.de> wrote:
Yes, the port that came with the installation CD. I just noticed that it uses kernel headers 3.4.11, while I'm on kernel 3.10.5. Could this be the reason?
Both of the errors in the config.log you posted are Red Herrings. You need to post the config.log from the libquadmath directory, which is where the failure occurred.
Ah yes, thanks. Attached are the config.logs from .../build/x86_64-unknown-linux-gnu/libquadmath and .../build/x86_64-unknown-linux-gnu/32/libquadmath. Both complain about an unknown option -V: --------------------------------------------------------------------- configure:3248: /usr/ports/core/gcc/work/src/build/./gcc/xgcc -B/usr/ports/core/gcc/work/src/build/./gcc/ -B/usr/x86_64-unknown-linux-gnu/bin/ -B/usr/x86_64-unknown-linux-gnu/lib/ -isystem /usr/x86_64-unknown-linux-gnu/include -isystem /usr/x86_64-unknown-linux-gnu/sys-include -qversion >&5 xgcc: error: unrecognized command line option '-qversion' xgcc: fatal error: no input files --------------------------------------------------------------------- Bernd -- http://sudrala.de
Bernd Eggink <monoped@sudrala.de> wrote:
--------------------------------------------------------------------- configure:3248: /usr/ports/core/gcc/work/src/build/./gcc/xgcc -B/usr/ports/core/gcc/work/src/build/./gcc/ -B/usr/x86_64-unknown-linux-gnu/bin/ -B/usr/x86_64-unknown-linux-gnu/lib/ -isystem /usr/x86_64-unknown-linux-gnu/include -isystem /usr/x86_64-unknown-linux-gnu/sys-include -qversion >&5 xgcc: error: unrecognized command line option '-qversion' xgcc: fatal error: no input files ---------------------------------------------------------------------
Also Red Herrings. It's just testing to see which version-querying flags are supported by the compiler. The actual error happens in the 32-bit log: ../../../../gcc-4.7.3/libquadmath/configure: line 3397: ./a.out: cannot \ execute binary file I'm guessing you're building binaries for 32-bit software, but you don't appear to have 32-bit libaries in place to run them (specifically a 32-bit version of ld-linux.so). I'm not sure about the specifics of your setup, but the line I pasted is the actual error that is killing your build. Try stracing that a.out file and see what library it's missing. khm
Bernd Eggink <monoped@sudrala.de> wrote:
--------------------------------------------------------------------- configure:3248: /usr/ports/core/gcc/work/src/build/./gcc/xgcc -B/usr/ports/core/gcc/work/src/build/./gcc/ -B/usr/x86_64-unknown-linux-gnu/bin/ -B/usr/x86_64-unknown-linux-gnu/lib/ -isystem /usr/x86_64-unknown-linux-gnu/include -isystem /usr/x86_64-unknown-linux-gnu/sys-include -qversion >&5 xgcc: error: unrecognized command line option '-qversion' xgcc: fatal error: no input files ---------------------------------------------------------------------
Also Red Herrings. It's just testing to see which version-querying flags are supported by the compiler. The actual error happens in the 32-bit log:
../../../../gcc-4.7.3/libquadmath/configure: line 3397: ./a.out: cannot \ execute binary file
I'm guessing you're building binaries for 32-bit software, but you don't appear to have 32-bit libaries in place to run them (specifically a 32-bit version of ld-linux.so). I'm not sure about the specifics of your setup, but the line I pasted is the actual error that is killing your build. Try stracing that a.out file and see what library it's missing.
khm
You should also verify if your Kernel can run 32 bit programs, I think the option is CONFIG_X86_X32. Alan
On 11.08.2013 00:47, Alan wrote:
You should also verify if your Kernel can run 32 bit programs, I think the option is CONFIG_X86_X32.
Bingo! I wasn't aware of this option - never compiled a 64-bit kernel before. Thanks a lot. IMHO it would be a good idea to add a README concerning this option to the gcc port, and also the dependency from glibc-32. Greetings, Bernd -- http://sudrala.de
On Sun, Aug 11, 2013 at 01:32:52PM +0000, Bernd Eggink wrote:
On 11.08.2013 00:47, Alan wrote:
You should also verify if your Kernel can run 32 bit programs, I think the option is CONFIG_X86_X32.
Bingo! I wasn't aware of this option - never compiled a 64-bit kernel before. Thanks a lot. IMHO it would be a good idea to add a README concerning this option to the gcc port, and also the dependency from glibc-32.
The correct option is "IA32_EMULATION". CONFIG_X86_X32 will select IA32_EMULATION as a dependency. CONFIG_X86_X32: Include code to run binaries for the x32 native 32-bit ABI for 64-bit processors. An x32 process gets access to the full 64-bit register file and wide data path while leaving pointers at 32 bits for smaller memory footprint. You will need a recent binutils (2.22 or later) with elf32_x86_64 support enabled to compile a kernel with this option set.
Greetings, Bernd
-- Fredrik Rinnestam
participants (6)
-
Alan
-
Alan Mizrahi
-
Bernd Eggink
-
Danny Rawlins
-
Fredrik Rinnestam
-
Kurt H Maier