I'm just about setting up an AlphaServer 800 5/500 (Noritake EV56). With a freshly unpacked stage3 (20090516) and a just synced portage tree, I wanted to install paludis-0.36.1, but the build fails with strange linker errors (I never saw those before). Reproducible: Always Steps to Reproduce: 1. ACCEPT_KEYWORDS="~alpha" USE="-*" emerge -av sys-apps/paludis 2. 3. Actual Results: /bin/sh ../../libtool --tag=CXX --mode=link alpha-unknown-linux-gnu-g++ -I../.. -DPALUDIS_HAVE_EXTERN_TEMPLATE=1 -pthread -Wall -Wextra -Wold-style-cast -Wredundant-decls -Wstrict-null-sentinel -Wmissing-noreturn -Woverloaded-virtual -Winit-self -Wunused -Wunused-function -Wshadow -Wwrite-strings -Wfloat-equal -Wno-ignored-qualifiers -Wno-old-style-cast -mieee -pipe -O2 -mcpu=ev56 -mtune=ev56 -version-info 36:1:0 -pthread -lpthread -lrt -Wl,-O1 -o libpaludisutil_0.36.la -rpath /usr/lib action_queue.lo active_object_ptr.lo config_file.lo condition_variable.lo cookie.lo damerau_levenshtein.lo destringify.lo deferred_construction_ptr.lo dir_iterator.lo discard_output_stream.lo exception.lo fs_entry.lo graph.lo hashes.lo is_file_with_extension.lo log.lo make_named_values.lo map.lo md5.lo mutex.lo named_value.lo options.lo pipe.lo pretty_print.lo random.lo rmd160.lo safe_ifstream.lo safe_ofstream.lo sequence.lo set.lo sha1.lo sha256.lo simple_parser.lo simple_visitor.lo simple_visitor_cast.lo strip.lo system.lo tail_output_stream.lo tee_output_stream.lo thread.lo thread_pool.lo tokeniser.lo tribool.lo type_list.lo -pthread -lpthread -lrt libtool: link: alpha-unknown-linux-gnu-g++ -shared -nostdlib /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../crti.o /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/crtbeginS.o .libs/action_queue.o .libs/active_object_ptr.o .libs/config_file.o .libs/condition_variable.o .libs/cookie.o .libs/damerau_levenshtein.o .libs/destringify.o .libs/deferred_construction_ptr.o .libs/dir_iterator.o .libs/discard_output_stream.o .libs/exception.o .libs/fs_entry.o .libs/graph.o .libs/hashes.o .libs/is_file_with_extension.o .libs/log.o .libs/make_named_values.o .libs/map.o .libs/md5.o .libs/mutex.o .libs/named_value.o .libs/options.o .libs/pipe.o .libs/pretty_print.o .libs/random.o .libs/rmd160.o .libs/safe_ifstream.o .libs/safe_ofstream.o .libs/sequence.o .libs/set.o .libs/sha1.o .libs/sha256.o .libs/simple_parser.o .libs/simple_visitor.o .libs/simple_visitor_cast.o .libs/strip.o .libs/system.o .libs/tail_output_stream.o .libs/tee_output_stream.o .libs/thread.o .libs/thread_pool.o .libs/tokeniser.o .libs/tribool.o .libs/type_list.o -lpthread -lrt -L/usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2 -L/usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/lib -L/usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/crtendS.o /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../crtn.o -pthread -mieee -mcpu=ev56 -mtune=ev56 -pthread -Wl,-O1 -pthread -pthread -Wl,-soname -Wl,libpaludisutil_0.36.so.36 -o .libs/libpaludisutil_0.36.so.36.0.1 mv -f .deps/output_wrapper.Tpo .deps/output_wrapper.Po /bin/sh ../../libtool --tag=CXX --mode=link alpha-unknown-linux-gnu-g++ -I../.. -DPALUDIS_HAVE_EXTERN_TEMPLATE=1 -pthread -Wall -Wextra -Wold-style-cast -Wredundant-decls -Wstrict-null-sentinel -Wmissing-noreturn -Woverloaded-virtual -Winit-self -Wunused -Wunused-function -Wshadow -Wwrite-strings -Wfloat-equal -Wno-ignored-qualifiers -Wno-old-style-cast -mieee -pipe -O2 -mcpu=ev56 -mtune=ev56 -Wl,-O1 -o outputwrapper output_wrapper.o /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: .libs/log.o: dtp-relative relocation against dynamic symbol paludis::InstantiationPolicy<paludis::Log, paludis::instantiation_method::SingletonTag>::get_instance()::recursive /usr/lib/gcc/alpha-unknown-linux-gnu/4.3.2/../../../../alpha-unknown-linux-gnu/bin/ld: final link failed: Nonrepresentable section on output collect2: ld returned 1 exit status make[6]: *** [libpaludisutil_0.36.la] Error 1 make[6]: *** Waiting for unfinished jobs.... libtool: link: alpha-unknown-linux-gnu-g++ -I../.. -DPALUDIS_HAVE_EXTERN_TEMPLATE=1 -pthread -Wall -Wextra -Wold-style-cast -Wredundant-decls -Wstrict-null-sentinel -Wmissing-noreturn -Woverloaded-virtual -Winit-self -Wunused -Wunused-function -Wshadow -Wwrite-strings -Wfloat-equal -Wno-ignored-qualifiers -Wno-old-style-cast -mieee -pipe -O2 -mcpu=ev56 -mtune=ev56 -Wl,-O1 -o outputwrapper output_wrapper.o -pthread make[6]: Leaving directory `/var/tmp/portage/sys-apps/paludis-0.36.1/work/paludis-0.36.1/paludis/util' make[5]: *** [all-recursive] Error 1 make[5]: Leaving directory `/var/tmp/portage/sys-apps/paludis-0.36.1/work/paludis-0.36.1/paludis/util' make[4]: *** [all] Error 2 make[4]: Leaving directory `/var/tmp/portage/sys-apps/paludis-0.36.1/work/paludis-0.36.1/paludis/util' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/sys-apps/paludis-0.36.1/work/paludis-0.36.1/paludis' make[2]: *** [all] Error 2 make[2]: Leaving directory `/var/tmp/portage/sys-apps/paludis-0.36.1/work/paludis-0.36.1/paludis' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/sys-apps/paludis-0.36.1/work/paludis-0.36.1' make: *** [all] Error 2 * * ERROR: sys-apps/paludis-0.36.1 failed. * Call stack: * ebuild.sh, line 48: Called src_compile * environment, line 2458: Called die * The specific snippet of code: * emake || die "emake failed" * The die message: * emake failed * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/sys-apps/paludis-0.36.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-apps/paludis-0.36.1/temp/environment'. * Expected Results: Either an installed paludis or an error I would be able to debug :)
Would you please attach the output of emerge --info?
Jer, why did you remove the "on alpha" part from the summary? It's rather important to the bug. In any case, there's ticket:759 on Paludis' trac. It's probably easier to keep things there.
(In reply to comment #2) > Jer, why did you remove the "on alpha" part from the summary? It's rather > important to the bug. It constitutes a duplication of the information in the Hardware field. Trivial really. :)
Created attachment 191940 [details] emerge --info Sorry, forgot this. Yeah, I opened #759 at pioto.org... Would have mentioned, but did first open this bug here.
Perhaps I should've mentioned: libtool is ~alpha, being my first shot for a plausible cause. But either it isn't, or there's a bug in there, that's not fixed since 1.5.3 (not sure about the minor number). -mcpu and -mtune in CFLAGS aren't making trouble neither. I already tested building with the default make.conf CFLAGS. Build also fails with standard USE settings (just tried -* for reducing number of failure sources).
On other archs I'd expect to see an -fPIC being shoved in there by libtool. If you manually add -fPIC to CXXFLAGS, does it work?
Nope, sorry. Same results with -fPIC in CXXFLAGS only and in both LDFLAGS and CXXFLAGS (with --mode=compile -fPIC gets set, so I guess you meant LDFLAGS, so for the second try I set this too).
Hrm. Google suggests that this is -fPIC related too. Are you absolutely sure that -fPIC is being passed to g++ for everything that gets compiled?
Hrm, not absolutely. I'll investigate this tomorrow or the day after ~™.
Is this still valid with paludis-0.72.2? If not, feel free to close this bug
This version of paludis is no longer in portage tree. If you can still re-produce this issue with current version, please re-open this bug.