Summary: | net-p2p/bitcoin-qt-{0.6.3,0.7.2_rc2} - ld: cannot find -lboost_system-1_52 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Eugene Volchek <eugene.volchek> |
Component: | Current packages | Assignee: | Anthony Basile <blueness> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | 404errorqc, dschridde+gentoobugs, gentoo, jwbraun, luke-jr+gentoobugs, mitaspiotr |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build log
build.log from net-p2p/bitcoind-0.7.2_rc2 |
Description
Eugene Volchek
2012-11-29 12:01:44 UTC
same problem bitcoin-qt-0.7.2_rc2 *** Bug 446316 has been marked as a duplicate of this bug. *** Not that this was fixed in 0.7.1 and broken again in 0.7.2_rc2. Does this problem affect the bitcoin overlay ebuilds too? No, the overlay has been fixed. This also affects net-p2p/bitcoind-0.7.2_rc2. This happens to me with bitcoin-qt-0.7.2 too. Does someone keep revbumping ebuilds without bothering to make sure they actually work? (In reply to comment #7) > This happens to me with bitcoin-qt-0.7.2 too. Does someone keep revbumping > ebuilds without bothering to make sure they actually work? I test every ebuild I move from the overlay to the tree. We need to narrow down what's going on with boost because its succeeding for me. Is this only an issue with boost 1.52? If so I can limit the dependency in the ebuild. In that case, I apologise for the implied accusing tone. I've only tried it with the latest version of boost in the tree (1.52.0-r5). Which one are you using? Created attachment 334590 [details]
build.log from net-p2p/bitcoind-0.7.2_rc2
# emerge -pqtv boost bitcoind
[ebuild U ] net-p2p/bitcoind-0.7.2_rc2 [0.7.1] USE="eligius ipv6 -examples -logrotate -upnp"
[ebuild R ] dev-libs/boost-1.52.0-r5 USE="icu threads -debug -doc -mpi -nls -python -static-libs -tools" PYTHON_TARGETS="python2_7 python3_2 -python2_5 -python2_6 -python3_1 (-python3_3)"
# qlist boost | fgrep '.so'
/usr/lib64/libboost_wserialization-mt.so
/usr/lib64/libboost_wave-mt.so
/usr/lib64/libboost_unit_test_framework-mt.so
/usr/lib64/libboost_timer-mt.so
/usr/lib64/libboost_thread-mt.so
/usr/lib64/libboost_system-mt.so
/usr/lib64/libboost_signals-mt.so
/usr/lib64/libboost_serialization-mt.so
/usr/lib64/libboost_regex-mt.so
/usr/lib64/libboost_random-mt.so
/usr/lib64/libboost_program_options-mt.so
/usr/lib64/libboost_prg_exec_monitor-mt.so
/usr/lib64/libboost_math_tr1-mt.so
/usr/lib64/libboost_math_tr1l-mt.so
/usr/lib64/libboost_math_tr1f-mt.so
/usr/lib64/libboost_math_c99-mt.so
/usr/lib64/libboost_math_c99l-mt.so
/usr/lib64/libboost_math_c99f-mt.so
/usr/lib64/libboost_iostreams-mt.so
/usr/lib64/libboost_graph-mt.so
/usr/lib64/libboost_filesystem-mt.so
/usr/lib64/libboost_date_time-mt.so
/usr/lib64/libboost_chrono-mt.so
/usr/lib64/libboost_wave.so
/usr/lib64/libboost_unit_test_framework.so
/usr/lib64/libboost_timer.so
/usr/lib64/libboost_thread.so
/usr/lib64/libboost_wave.so.1.52.0
/usr/lib64/libboost_timer.so.1.52.0
/usr/lib64/libboost_thread.so.1.52.0
/usr/lib64/libboost_prg_exec_monitor.so
/usr/lib64/libboost_unit_test_framework.so.1.52.0
/usr/lib64/libboost_signals.so
/usr/lib64/libboost_wserialization.so
/usr/lib64/libboost_prg_exec_monitor.so.1.52.0
/usr/lib64/libboost_serialization.so
/usr/lib64/libboost_program_options.so
/usr/lib64/libboost_signals.so.1.52.0
/usr/lib64/libboost_random.so
/usr/lib64/libboost_wserialization.so.1.52.0
/usr/lib64/libboost_math_c99l.so
/usr/lib64/libboost_serialization.so.1.52.0
/usr/lib64/libboost_random.so.1.52.0
/usr/lib64/libboost_program_options.so.1.52.0
/usr/lib64/libboost_math_c99f.so
/usr/lib64/libboost_math_c99l.so.1.52.0
/usr/lib64/libboost_math_tr1l.so
/usr/lib64/libboost_math_c99.so
/usr/lib64/libboost_math_tr1f.so
/usr/lib64/libboost_math_c99f.so.1.52.0
/usr/lib64/libboost_math_tr1.so
/usr/lib64/libboost_math_c99.so.1.52.0
/usr/lib64/libboost_regex.so
/usr/lib64/libboost_math_tr1l.so.1.52.0
/usr/lib64/libboost_graph.so
/usr/lib64/libboost_math_tr1f.so.1.52.0
/usr/lib64/libboost_iostreams.so
/usr/lib64/libboost_math_tr1.so.1.52.0
/usr/lib64/libboost_iostreams.so.1.52.0
/usr/lib64/libboost_graph.so.1.52.0
/usr/lib64/libboost_regex.so.1.52.0
/usr/lib64/libboost_filesystem.so
/usr/lib64/libboost_date_time.so
/usr/lib64/libboost_system.so
/usr/lib64/libboost_chrono.so
/usr/lib64/libboost_filesystem.so.1.52.0
/usr/lib64/libboost_date_time.so.1.52.0
/usr/lib64/libboost_chrono.so.1.52.0
/usr/lib64/libboost_system.so.1.52.0
(In reply to comment #9) > In that case, I apologise for the implied accusing tone. I've only tried it > with the latest version of boost in the tree (1.52.0-r5). Which one are you > using? I'm using boost-1.49.0-r2. I always test against current stable. Looks like some API change between the two versions. Let me see what I can do. (In reply to comment #11) > I'm using boost-1.49.0-r2. I always test against current stable. Looks > like some API change between the two versions. Let me see what I can do. I think what we see here is the move from slotted/versioned boost libraries to slot0/unversioned boost libraries. Before the move they were named libboost_system-1_52.so and now they are named libboost_system.so.1.52.0. Manually removing the version numbers in the Makefile seems to do the job and the package compiles without errors (boost 1.52), a way to prevent qmake to do "wrong" assumption? Just for note. If I bump bitcoin-qt-0.7.1 ebuild to 0.7.2 and replace WORKDIR, it builds ok. (In reply to comment #13) > Manually removing the version numbers in the Makefile seems to do the job > and the package compiles without errors (boost 1.52), a way to prevent qmake > to do "wrong" assumption? Yeah that's it. The problem is this line: OPTS+=("BOOST_LIB_SUFFIX=-${BOOST_VER}") in the ebuild which sets a suffix to boost's version. The unslotted version only has one boost verions installed, so I don't see the point. I don't know how that got in there, I think Diego took it out. I'll check the cvs logs and if so, I'll remove it from bitcoin-qt-0.7.2, have you guys test and then punt it from all bitcoin-qt ebuilds. (In reply to comment #14) > Just for note. If I bump bitcoin-qt-0.7.1 ebuild to 0.7.2 and replace > WORKDIR, it builds ok. Yeah thanks, that's the confirmation I wanted! (I had a mid-air while posting the previous.) 0.7.1 is the correct way of doing it. All versioning of boost needs to go. Give me a few minutes and I'll have it fixed. (In reply to comment #16) > (In reply to comment #14) > > Just for note. If I bump bitcoin-qt-0.7.1 ebuild to 0.7.2 and replace > > WORKDIR, it builds ok. > > Yeah thanks, that's the confirmation I wanted! (I had a mid-air while > posting the previous.) > > 0.7.1 is the correct way of doing it. All versioning of boost needs to go. > > Give me a few minutes and I'll have it fixed. Okay I fixed this for net-p2p/bitcoind-0.7.* and net-p2p/bitcoin-qt-0.7* although all the versions could probably use this. Moving forward I will make sure all boost versioning is gone. Let's leave this bug open as a reminder that I should backport this to all bitcoind and bitcoin-qt versions. I just want to move slowly to make sure I'm not breaking everything. Please test!!!! It works for me, but we want it working for everyone. (In reply to comment #15) > (In reply to comment #13) > > Manually removing the version numbers in the Makefile seems to do the job > > and the package compiles without errors (boost 1.52), a way to prevent qmake > > to do "wrong" assumption? > > Yeah that's it. The problem is this line: > > OPTS+=("BOOST_LIB_SUFFIX=-${BOOST_VER}") > > in the ebuild which sets a suffix to boost's version. The unslotted version > only has one boost verions installed, so I don't see the point. I don't > know how that got in there, I think Diego took it out. I'll check the cvs > logs and if so, I'll remove it from bitcoin-qt-0.7.2, have you guys test and > then punt it from all bitcoin-qt ebuilds. That line was removed from all versions in the overlay a month ago - including the maintree branch until you sync'd with the real main tree. Weird that somehow it snuck back in O.o Okay I've removed the following lines from all bitcoind and bitcoin-qt ebuilds: - local BOOST_PKG BOOST_VER BOOST_INC - BOOST_PKG="$(best_version 'dev-libs/boost')" - BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")" - BOOST_VER="$(replace_all_version_separators _ "${BOOST_VER}")" - BOOST_INC="/usr/include/boost-${BOOST_VER}" - OPTS+=("BOOST_INCLUDE_PATH=${BOOST_INC}") - OPTS+=("BOOST_LIB_SUFFIX=-${BOOST_VER}") Also, I've force the following dependency: >=dev-libs/boost-1.41.0[threads(+)] with USE=threads being pushed down too boost. This bug should be fixed. Reopen if its still a problem. |