You are here

Error in building fragment_picker with boost_thread

6 posts / 0 new
Last post
Error in building fragment_picker with boost_thread
#1

Hi all,

I am new to the whole Rosetta community and am asking for some help in compiling Rosetta3.  I have downloaded build Rosetta3.12 build 2020.08.61146 and tried to compile the thread boost version of fragment pick by using

./scons.py mode=release extras=boost_thread bin/fragment_picker.boost_thread.linuxgccrelease -j 20

The error message that I get is:

**************************************************

g++ -o build/external/release/linux/3.10/64/x86/gcc/4.8/boost_thread/libzmq.so -Wl,--disable-new-dtags -shared -Wl,-rpath=/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/build/external/release/linux/3.10/64/x86/gcc/4.8/boost_thread -Wl,-rpath=\$ORIGIN -Wl,-rpath=\$ORIGIN/../lib build/external/release/linux/3.10/64/x86/gcc/4.8/boost_thread/dummy.os -Lexternal/lib -Lbuild/external/release/linux/3.10/64/x86/gcc/4.8/boost_thread -Lexternal -L/usr/lib/oracle/12.2/client64/lib -L/usr/lib -L/usr/local/lib -L/usr/local/lib -L/opt/boost/lib -lpthread -lpthread -lboost_thread
/usr/bin/ld: cannot find -lboost_thread
collect2: error: ld returned 1 exit status
scons: *** [build/external/release/linux/3.10/64/x86/gcc/4.8/boost_thread/libzmq.so] Error 1

*************************************************

Here is some information about the machine that I am trying to compile Rosetta on;

gcc version 4.8.5 20150623

CentOS7

kernel version: Linux 3.10.0-862.el7.x86_64 x86_64
 

Can someone with more experience point me to what the problem is?

 

Best,

Ken

Category: 
Post Situation: 
Thu, 2020-06-04 09:33
Ken

Hi, Ken.  The Boost::thread build is one that we unfortunately no longer test or actively support.  It looks like it has succumbed to bit-rot.  We plan to switch the fragment picker to use C++11 threads in the near future (to be in line with the rest of Rosetta).  Until then, the single-threaded build is unfortunately the best option.

Thu, 2020-06-04 10:04
vmulligan

Correction: it looks like there's already C++11 thread support there.  So you can compile with `extras=cxx11thread` instead of `extras=boost_thread`.

Thu, 2020-06-04 10:12
vmulligan

Thanks vmullgan.  If I downloaded the binary executable bundle instead of the source and only want to compile fragment picker, can you tell me what the name would be? I am asking because I am getting this error when I use

./scons.py mode=release extras=cx11thread bin/fragment_picker.boost_thread.linuxgccrelease -j 20

error:

******************************

scons: Reading SConscript files ...
Traceback (most recent call last):
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/SConstruct", line 149, in main
    build = SConscript("tools/build/setup.py")
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/external/scons-local/scons-local-3.0.4/SCons/Script/SConscript.py", line 667, in __call__
    return method(*args, **kw)
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/external/scons-local/scons-local-3.0.4/SCons/Script/SConscript.py", line 604, in SConscript
    return _SConscript(self.fs, *files, **subst_kw)
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/external/scons-local/scons-local-3.0.4/SCons/Script/SConscript.py", line 285, in _SConscript
    call_stack[-1].globals)
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/tools/build/setup.py", line 451, in <module>
    build = setup()
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/tools/build/setup.py", line 441, in setup
    build.options_requested, build.options = setup_build_options()
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/tools/build/setup.py", line 72, in setup_build_options
    env  = Environment(options = options)
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/external/scons-local/scons-local-3.0.4/SCons/Environment.py", line 965, in __init__
    variables.Update(self)
  File "/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/external/scons-local/scons-local-3.0.4/SCons/Variables/__init__.py", line 221, in Update
    raise SCons.Errors.UserError('Error converting option: %s\n%s'%(option.key, x))
SCons.Errors.UserError: Error converting option: extras
Invalid value(s) for option: cx11thread
scons: done reading SConscript files.
scons: Building targets ...
scons: *** Do not know how to make File target `bin/fragment_picker.boost_thread.linuxgccrelease' (/nfs/peptide/home/lok2/tmp/rosetta_bin_linux_2020.08.61146_bundle/main/source/bin/fragment_picker.boost_thread.linuxgccrelease).  Stop.
scons: building terminated because of errors.

*****************************************

Best,

Ken
 

Thu, 2020-06-04 11:22
Ken

Hi, Ken:

It's extras=cxx11thread, not extras=cx11thread.  And the executable is bin/fragment_picker.cxx11thread.linuxgccrelease, though you needn't provide the whole executable name.  Scons is smart enough to figure it out if you just say fragment_picker.  So:

./scons.py -j 20 mode=release extras=cxx11thread fragment_picker

 

Sun, 2020-06-07 16:11
vmulligan

Thanks vmulligan!  Worked like a charm.

Best,

Ken

Wed, 2020-06-10 09:45
Ken