Ask Your Question
1

/usr/bin/ld: cannot find -lboost_thread-mt

asked 2014-01-25 09:46:59 -0500

flnx gravatar image

updated 2014-01-25 18:08:49 -0500

FranciscoD_ gravatar image

when I compile a program, I met the problem:

make -f makefile.unix
g++ -Wl,-z,relro -Wl,-z,now  -o ptsminer  obj/cpuid.o obj/sha512_avx.o obj/sha512_sse4.o obj/sha512_avx2.o obj/sha512.o obj/sph_sha2.o obj/sph_sha2big.o obj/main_poolminer.o  -Wl,-Bdynamic -l boost_system -l boost_filesystem -l boost_program_options -l boost_thread-mt -Wl,-Bdynamic -l z -l dl -l pthread
/usr/bin/ld: cannot find -lboost_thread-mt
collect2: error: ld returned 1 exit status

I already installed some boost* packages, and I used "yum provides /boost_thread-mt*" trying to find out which package contains the lib, but it seems no packages except some mingw32/64 packages contain the lib

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
4

answered 2014-01-25 10:16:15 -0500

Ahmad Samir gravatar image

updated 2014-01-26 01:19:29 -0500

If you're using a Fedora release older than F20 installing boost-devel should fix this issue. Note that ld links against libs, so it's looking for libboost_thread-mt.so (you should broaden your search with:

yum provides *boost_thread-mt*

However if you're using F20, there's no libboost_thread-mt.so any more in Fedora:

$ rpm -q --changelog boost-thread
[....]
* Fri Jul 26 2013 Petr Machata <pmachata@redhat.com> - 1.54.0-1
- Rebase to 1.54.0
[...]
- Drop symlinks from libboost_{thread,locale,atomic}.so -> *-mt.so,
  which we don't need anymore, as we ditched the tagged layout.</pmachata@redhat.com>

you'll need to patch the programme you're trying to compile to make it link against libboost_thread.so instead.

edit flag offensive delete link more

Comments

you are right, it works now! Thank you!

flnx gravatar imageflnx ( 2014-01-25 21:15:29 -0500 )edit

Question Tools

Stats

Asked: 2014-01-25 09:46:59 -0500

Seen: 4,704 times

Last updated: Jan 26 '14