Compiling OB from sources
Fetching / updating sources from git repositories. Please notice the patching eem charges model with eem_fix.patch (optional).
#!/bin/bash # for the first time use: #mkdir -p openbabel # cd openbabel #git clone git://github.com/openbabel/openbabel.git cd openbabel git pull cd .. # optional for patching EEM # echo patching.... # patch openbabel/src/charges/eem.cpp < eem_fix.patch if [ -d build ]; then echo "********* Please delete build dir" exit fi mkdir build cd build cmake ../openbabel -DPYTHON_BINDINGS=ON -DRUN_SWIG=ON \ -DPYTHON_INCLUDE_DIR=/usr/include/python2.6 \ -DPYTHON_LIBRARY=/usr/lib/python2.6/config/libpython2.6.so \ -DCMAKE_INSTALL_PREFIX=~/bin/openbabel-install make -j14 make test
After successful compilation you should have a complete openbabel structure under your bin/openbabel-install:
~/bin/openbabel-install/ |-bin |-include |---inchi |---openbabel-2.0 |-----openbabel |-------json |-------math |-------stereo |-lib |---cmake |-----openbabel2 |---openbabel |-----2.3.90 |---pkgconfig |---python2.6 |-----site-packages |-share |---man |-----man1 |---openbabel |-----2.3.90
Compiling align-it
Fetch the newest version of silicos align-it, extract it to directory of your choice (eg. align-it-1.0.4). Then you can use following script to setup environmental variables and compile the program:
#!/bin/bash export BABEL_LIBDIR=/home/fstefaniak/bin/openbabel-install/lib/ export BABEL_INCLUDEDIR=/home/fstefaniak/bin/openbabel-install/include/openbabel-2.0/openbabel/ export BABEL_DATADIR=/home/fstefaniak/bin/openbabel-install/share/openbabel/2.3.90/ cd align-it-1.0.4 mkdir build cd build cmake .. make
To be continued
Some more notes
Update 2017/12/01
compiling the older version of OpenBabel (2.3.1), I get the error
Scanning dependencies of target openbabel [ 0%] Building CXX object src/CMakeFiles/openbabel.dir/alias.o In file included from /home/fstefaniak/sources/openbabel/openbabel-2.3.1/include/openbabel/alias.h:19:0, from /home/fstefaniak/sources/openbabel/openbabel-2.3.1/src/alias.cpp:17: /home/fstefaniak/sources/openbabel/openbabel-2.3.1/include/openbabel/shared_ptr.h:27:14: error: ‘std::tr1’ has not been declared using std::tr1::shared_ptr; ^ src/CMakeFiles/openbabel.dir/build.make:62: recipe for target 'src/CMakeFiles/openbabel.dir/alias.o' failed make[2]: *** [src/CMakeFiles/openbabel.dir/alias.o] Error 1 CMakeFiles/Makefile2:1232: recipe for target 'src/CMakeFiles/openbabel.dir/all' failed make[1]: *** [src/CMakeFiles/openbabel.dir/all] Error 2 Makefile:138: recipe for target 'all' failed make: *** [all] Error 2
Thanks to https://diane-be-unique.com/2016/10/19/openbabel-error-in-installing/ the solution is: in openbabel-2.3.1/include/openbabel/shared_ptr.h add:
#include <tr1/memory>
Brak komentarzy:
Prześlij komentarz