Menu

Compiling on MacOS

2020-10-20
2020-10-21
  • Visvaldas Kairys

    I was trying to modify the code, but the compilation on MacOS fails due to chrono boost library (the message below). Is there any solution to this? I am using macports version of boost v. 1.71.0.

    /usr/bin/g++ -ansi -O3 -DNDEBUG -I /opt/local/include/ -I /usr/local/include/openbabel -L/opt/local/lib -o server server.o CommandLine.o MinimizationQuery.o QueryManager.o builtinscoring.o cache.o coords.o custom_terms.o everything.o flexinfo.o grid.o szv_grid.o model.o monte_carlo.o mutate.o my_pid.o naive_non_cache.o non_cache.o obmolopener.o parallel_mc.o parse_pdbqt.o pdb.o quasi_newton.o quaternion.o random.o ssd.o terms.o weighted_terms.o molgetter.o result_info.o PDBQTUtilities.o SminaConverter.o -l openbabel -l boost_iostreams-mt -l boost_timer-mt -lz -l boost_system-mt -l boost_regex-mt -l boost_thread-mt -l boost_serialization-mt -l boost_filesystem-mt -l boost_program_options-mt -l boost_date_time-mt
    clang: warning: argument unused during compilation: '-ansi' [-Wunused-command-line-argument]
    Undefined symbols for architecture x86_64:
    "boost::chrono::steady_clock::now()", referenced from:
    boost::asio::basic_socket_streambuf<boost::asio::ip::tcp, boost::chrono::steady_clock,="" boost::asio::wait_traits<boost::chrono::steady_clock=""> >::underflow() in server.o
    boost::asio::basic_socket_streambuf<boost::asio::ip::tcp, boost::chrono::steady_clock,="" boost::asio::wait_traits<boost::chrono::steady_clock=""> >::overflow(int) in server.o
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    make: *** [../../makefile_common:42: server] Error 1</boost::asio::ip::tcp,></boost::asio::ip::tcp,>

     
  • David Koes

    David Koes - 2020-10-20

    Did you configure using cmake? What version?

     
  • Visvaldas Kairys

    I didn't use cmake, I just ran Make in build/mac/release directory.

    I found cmakelists in eigen subdirectory. I guess I'll try running cmake that directory. I have cmake v. 3.10.1 from fink.

    UPDATE: It turned out smina exec was generated in spite of the chrono error, I was so sure it failed I didn't look. I'll try running it with real world example.

    UPDATE2: I don't want to open a new topic, I'd rather describe it here. I have created a new smina atom type "Dummy", with element symbol "Tc", and I'd like your input if it's OK; there are few other changes to accomodate this, all in atom_constants.h". I tried to make it as inert and point-like as possible, without understanding much of the code. It seems to work though. Does this look okay?

    {Dummy, EL_TYPE_Du, AD_TYPE_Du, XS_TYPE_Du_X,"Dummy",
    "Tc", 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, false, false, false, false}

     

    Last edit: Visvaldas Kairys 2020-10-21
  • David Koes

    David Koes - 2020-10-21

    The legacy build files should have gone away - I suggest you check to make sure you have the latest version of the code and rebuild using cmake.

    The dummy specification looks fine to me.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.