User:NeddySeagoon/Profile 17.0
Neddys Notes to Self on the 17.0 Profile
What the 17.0 Profile Does
The 17.0 Profile depends on gcc-6.x, forces Position Independent Executables (pie) everywhere and breaks random things. Its far from stable and changes may be added/deleted/modified/reverted at any emerge --sync without warning
Position Independent Executables
That change breaks all the static libraries that are installed. I'm not aware of a command to rebuild static libraries but there probably will be one before the new profile goes stable.
I will be rebuilding @world because I'm doing other things with my Gentoo, just because I can.
- gcc-7.1
- Gold linker
- Old Fashioned Gentoo Install
- ~amd64 no-multilib with a few hard masked packages
Should I try the 17.0 Profile?
If you need to ask, No.
Summary Progress
1117 Packages Total
4 build with gcc-6.3 or the bfd linker
1 messed up USE flags
6 to investigate
What Fails to Build/Install
Reason or reasons unknown ... yet.
>>> emerge (65 of 1117) dev-embedded/u-boot-tools-2017.05 to / >>> emerge (195 of 1050) media-libs/libid3tag-0.15.1b-r4 to / >>> emerge (441 of 816) dev-util/catalyst-3.0_rc1 to / >>> emerge (33 of 325) cross-armv6j-hardfloat-linux-gnueabi/glibc-2.23-r3 to / >>> emerge (6 of 291) cross-armv7a-hardfloat-linux-gnueabi/glibc-2.24-r1 to / >>> emerge (21 of 264) sys-apps/openrc-0.17 to /
What Can Be Coaxed to Build
>>> emerge (37 of 855) sys-apps/busybox-1.26.2-r1 to / >>> emerge (47 of 375) cross-powerpc-unknown-linux-gnu/gcc-6.3.0 to / >>> emerge (10 of 35) media-gfx/ufraw-0.22-r1 to / >>> emerge (18 of 282) dev-cpp/clucene-2.3.3.4-r6 to / >>> emerge (207 of 243) media-libs/mediastreamer-2.9.0-r1
www-client/firefox-53.0.3 and mail-client/thunderbird-52.1.1 have know build issues with gcc-7.1 The work around is
CXXFLAGS="${CXXFLAGS} -mno-avx" USE=custom-optimization emerge thunderbird firefox -av
with -O2 in make.conf See bug #617882.
This is not an issue with the 17.0 profile, its gcc-7.1 and the Mozilla install routines not working together.
Build Issues
Hopefully, there will patches or known workarounds (like don't use the gold linker) already.
dev-embedded/u-boot-tools-2017.05
dev-embedded/u-boot-tools-2017.05 There are no USE flags
mv _libfdt.so tools/_libfdt.so mv: cannot stat '_libfdt.so': No such file or directory make[1]: *** [tools/Makefile:124: tools/_libfdt.so] Error 1 make: *** [Makefile:1234: tools] Error 2
media-libs/libid3tag-0.15.1b-r4
media-libs/libid3tag-0.15.1b-r4 USE="-..."
compat.gperf:116:1: error: conflicting types for 'id3_compat_lookup' In file included from compat.gperf:37:0: /var/tmp/portage/media-libs/libid3tag-0.15.1b-r4/work/libid3tag-0.15.1b/compat.h:36:26: note: previous declaration of 'id3_compat_lookup' was here struct id3_compat const *id3_compat_lookup(register char const *, ^09:14, 13 June 2017 (UTC)09:14, 13 June 2017 (UTC)09:14, 13 June 2017 (UTC)~ make[2]: *** [Makefile:373: compat.lo] Error 1
sys-apps/busybox-1.26.2-r1
sys-apps/busybox-1.26.2-r1::gentoo USE="ipv6 static -..." as it goes in my initrd and works without glibc when my main system is broken.
Your linker does not support --sort-section,alignment Static linking against glibc, can't use --gc-sections Trying libraries: crypt m Failed: -Wl,--start-group -lcrypt -lm -Wl,--end-group
Works with the bfd linker.
CFLAGS="${CFLAGS} -fuse-ld=bfd" emerge -1av =sys-apps/busybox-1.26.2-r1
dev-util/catalyst-3.0_rc1
dev-util/catalyst-3.0_rc1::gentoo USE="-ccache -doc" PYTHON_TARGETS="python2_7 python3_4 -python3_5"
: python_wrapper_setup: python2 is not supported by python3.4 (PYTHON_COMPAT) make: *** [Makefile:31: doc/subarches.generated.txt] Error 127 * ERROR: dev-util/catalyst-3.0_rc1::gentoo failed (compile phase):
cross-powerpc-unknown-linux-gnu/gcc-6.3.0
Oops. Its known broken with those new USE flags.
cross-powerpc-unknown-linux-gnu/gcc-6.3.0 USE="cxx* fortran* graphite nls nptl openmp* pch pie sanitize* ssp vtv* -..."
Builds cleanly with
USE="cxx -fortran graphite nls nptl -openmp pch pie -sanitize ssp -vtv"
cross-armv6j-hardfloat-linux-gnueabi/glibc-2.23-r3
cross-armv6j-hardfloat-linux-gnueabi/glibc-2.23-r3 USE="caps rpc -..."
pt-vfork.c:41:3: error: #error "must write pt-vfork for this machine or get IFUNC support" # error "must write pt-vfork for this machine or get IFUNC support"
cross-armv7a-hardfloat-linux-gnueabi/glibc-2.24-r1
cross-armv7a-hardfloat-linux-gnueabi/glibc-2.24-r1 USE="caps multilib rpc -..."
pt-vfork.c:41:3: error: #error "must write pt-vfork for this machine or get IFUNC support" # error "must write pt-vfork for this machine or get IFUNC support"
dev-cpp/clucene-2.3.3.4-r6
dev-cpp/clucene-2.3.3.4-r6 USE="-..."
CMake Error at src/shared/cmake/MacroEnsureVersion.cmake:27 (MATH): math cannot parse the expression: "x86_647*10000 + x86_641*100 + x86_640": syntax error, unexpected exp_NUMBER, expecting $end (8)
Builds with x86_64-pc-linux-gnu-6.3.0, so that's OK then.
sys-apps/openrc-0.17
This is no longer in the tree, so I get to keep the pieces.
sys-apps/openrc-0.17::gentoo_static [0.17::gentoo] USE="ncurses netifrc pam tools unicode -..."
* ERROR: sys-apps/openrc-0.17::gentoo_static failed (install phase): * !!! newins: /var/tmp/portage/sys-apps/openrc-0.17/files/openrc.logrotate does not exist
media-libs/mediastreamer-2.9.0-r1
media-libs/mediastreamer-2.9.0-r1 USE="X alsa amr filters ipv6 opengl ortp sdl speex theora v4l video x264 -..."
../src/.libs/libmediastreamer_voip.so: error: undefined reference to 'XShmDetach' ../src/.libs/libmediastreamer_voip.so: error: undefined reference to../src/.libs/libmediastreamer_voip.so: error: undefined reference to 'XShmDetach' ../src/.libs/libmediastreamer_voip.so: error: undefined reference to 'XShmQueryExtension' ../src/.libs/libmediastreamer_voip.so: error: undefined reference to 'XShmAttach' collect2: error: ld returned 1 exit status
bug #590938 Works with the bfd linker.
CFLAGS="${CFLAGS} -fuse-ld=bfd" emerge -1av =media-libs/mediastreamer-2.9.0-r1
media-gfx:ufraw-0.22-r1
media-gfx/ufraw-0.22-r1 USE="gimp gtk jpeg2k openmp -..."
dcraw.cc: In member function ‘void DCRaw::identify()’: dcraw.cc:9245:16: error: call of overloaded ‘abs(unsigned int&)’ is ambiguous if (abs(i) < abs(c)) {
Builds with x86_64-pc-linux-gnu-6.3.0, so that's OK then.
What Works
The system works with the MATE desktop but its still early days.