compile error of trinity related to an outdated gcc ?
I'm wondering why I can't compile trinity within a KVM running an 32 bit x86 Gentoo Linux whereas I can compile the same package within a user mode linuc chroot environment image having also a x86 Gentoo.
The only difference seems to be the compiler (gcc-4.8.3 in UML works) whereas within KVM I do have the gcc 4.7.3-r1
n22kvm ~ # emerge trinity
These are the packages that would be merged, in reverse order:
Calculating dependencies .... done!
[ebuild N ~] dev-util/trinity-9 USE="-examples"
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Verifying ebuild manifests
Emerging (1 of 1) dev-util/trinity-9 from toralf Failed to emerge dev-util/trinity-9, Log file:
'/var/log/portage/dev-util:trinity-9:20140829-163835.log.gz'
Jobs: 0 of 1 complete, 1 failed Load avg: 0.94, 0.61, 0.29
* Package: dev-util/trinity-9
* Repository: toralf
* USE: abi_x86_32 elibc_glibc kernel_linux userland_GNU x86
* FEATURES: compressdebug preserve-libs sandbox splitdebug userpriv usersandbox
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Unpacking source...
Unpacking trinity-9.tar.xz to/var/tmp/portage/dev-util/trinity-9/workSource unpacked in/var/tmp/portage/dev-util/trinity-9/workPreparing source in/var/tmp/portage/dev-util/trinity-9/work/trinity-9... Source prepared.
Configuring source in/var/tmp/portage/dev-util/trinity-9/work/trinity-9...
[*] Checking system headers.
[*] Checking if pppox can use pppol2tpin6.. [YES]
[*] Checking if pppox can use pppol2tv3.. [YES]
[*] Checking if pppox can use pptp.. [YES]
[*] Checking if llc can use LLC_OPT_PKTINFO.. [YES]
[*] Checking if glibc headers provide termios2.. [NO]
[*] Checking header linux/caif/caif_socket.h ... [YES]
[*] Checking header linux/if_alg.h ... [YES]
[*] Checking header linux/rds.h ... [YES]
[*] Checking header linux/vfio.h ... [YES]
[*] Checking header linux/btrfs.h ... [YES]
[*] Checking header drm/drm.h ... [NO]
[*] Checking header drm/exynos_drm.h ... [NO]
[*] Checking header sound/compress_offload.h ... [YES]
[*] Checking header linux/kvm.h ... [YES]
[*] Checking header linux/seccomp.h ... [YES]
[*] Checking header linux/vhost.h ... [YES]
[-] Some header definitions were missing. This is not fatal.
It usually means you're building on an older distribution which doesn't have header files describing newer kernel features.
Trinity will still compile and run, it just won't use those new features. Go ahead, and run 'make'
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Source configured.
Compiling source in/var/tmp/portage/dev-util/trinity-9/work/trinity-9...
make -j2 V=1
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o arg-decoder.o -c arg-decoder.c
fatal: Not a git repository (or any of the parent directories): .git
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o blockdevs.o -c blockdevs.c <command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
arg-decoder.c:1:0: note: this is the location of the previous definition
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
blockdevs.c:1:0: note: this is the location of the previous definition
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o child.o -c child.c <command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
child.c:1:0: note: this is the location of the previous definition
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o debug.o -c debug.c <command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
debug.c:1:0: note: this is the location of the previous definition
debug.c:15:21: fatal error: version.h: No such file or directory
compilation terminated.
make: *** [debug.o] Error 1
make: *** Waiting for unfinished jobs....
* ERROR: dev-util/trinity-9::toralf failed (compile phase):
* emake failed
*
Signature · 2 lines
Toralf pgp key: 0076 E94E
ick, solved that issue by tweaking the Makefile, but there's another culprit to build it:
...
cal-op -Wstrict-aliasing=3 -o debug.o -c debug.c debug.c:15:21: fatal error: version.h: No such file or directory compilation terminated.
make: *** [debug.o] Error 1
make: *** Waiting for unfinished jobs....
* ERROR: dev-util/trinity-9::toralf failed (compile phase):
* emake failed
This happens in a KVM machine where I build it with the same Gentoo ebuild definition file as in a UML chroot environment, the difference is just the fact, that git is installed within the KVM , but not within the UML.
Quoted 74 lines · Toralf Förster
I'm wondering why I can't compile trinity within a KVM running an 32 bit x86 Gentoo Linux whereas I can compile the same package within a user mode linuc chroot environment image having also a x86 Gentoo.
The only difference seems to be the compiler (gcc-4.8.3 in UML works) whereas within KVM I do have the gcc 4.7.3-r1
n22kvm ~ # emerge trinity
These are the packages that would be merged, in reverse order:
Calculating dependencies .... done!
[ebuild N ~] dev-util/trinity-9 USE="-examples"Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Verifying ebuild manifests
Emerging (1 of 1) dev-util/trinity-9 from toralf Failed to emerge dev-util/trinity-9, Log file:
'/var/log/portage/dev-util:trinity-9:20140829-163835.log.gz'
Jobs: 0 of 1 complete, 1 failed Load avg: 0.94, 0.61, 0.29* Package: dev-util/trinity-9
* Repository: toralf
* USE:abi_x86_32elibc_glibckernel_linuxuserland_GNUx86
* FEATURES: compressdebug preserve-libs sandbox splitdebug userpriv usersandboxQuoted 6 lines
Quoted 6 lines
Quoted 6 lines
Unpacking source...
Unpacking trinity-9.tar.xz to/var/tmp/portage/dev-util/trinity-9/workSource unpacked in/var/tmp/portage/dev-util/trinity-9/workPreparing source in/var/tmp/portage/dev-util/trinity-9/work/trinity-9... Source prepared.
Configuring source in/var/tmp/portage/dev-util/trinity-9/work/trinity-9...[*] Checking system headers.
[*] Checking if pppox can use pppol2tpin6.. [YES]
[*] Checking if pppox can use pppol2tv3.. [YES]
[*] Checking if pppox can use pptp.. [YES]
[*] Checking if llc can useLLC_OPT_PKTINFO.. [YES]
[*] Checking if glibc headers provide termios2.. [NO]
[*] Checking headerlinux/caif/caif_socket.h... [YES]
[*] Checking headerlinux/if_alg.h... [YES]
[*] Checking headerlinux/rds.h... [YES]
[*] Checking headerlinux/vfio.h... [YES]
[*] Checking headerlinux/btrfs.h... [YES]
[*] Checking headerdrm/drm.h... [NO]
[*] Checking headerdrm/exynos_drm.h... [NO]
[*] Checking headersound/compress_offload.h... [YES]
[*] Checking headerlinux/kvm.h... [YES]
[*] Checking headerlinux/seccomp.h... [YES]
[*] Checking headerlinux/vhost.h... [YES]
[-] Some header definitions were missing. This is not fatal.
It usually means you're building on an older distribution which doesn't have header files describing newer kernel features.
Trinity will still compile and run, it just won't use those new features. Go ahead, and run 'make'Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Source configured.
Compiling source in/var/tmp/portage/dev-util/trinity-9/work/trinity-9...make -j2 V=1
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o arg-decoder.o -carg-decoder.c
fatal: Not a git repository (or any of the parent directories): .git
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o blockdevs.o -cblockdevs.c<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
arg-decoder.c:1:0: note: this is the location of the previous definition
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
blockdevs.c:1:0: note: this is the location of the previous definition
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o child.o -cchild.c<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
child.c:1:0: note: this is the location of the previous definition
i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -g -ggdb -Wall -W -g -O2 -I. -Iinclude/ -Wimplicit -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D__linux__ -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -Wlogical-op -Wstrict-aliasing=3 -o debug.o -cdebug.c<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
debug.c:1:0: note: this is the location of the previous definition
debug.c:15:21: fatal error:version.h: No such file or directory
compilation terminated.
make: *** [debug.o] Error 1
make: *** Waiting for unfinished jobs....
* ERROR: dev-util/trinity-9::toralf failed (compile phase):
* emake failed
*
Signature · 2 lines
Toralf pgp key: 0076 E94E