Difference between revisions of "Install (source code)"

From Open Babel
Jump to: navigation, search
(Added instructions for using --enable-maintainer-mode)
(Information on libxml2-dev and zlib.h)
Line 14: Line 14:
 
This will create a folder called 'openbabel-2.0.2'.
 
This will create a folder called 'openbabel-2.0.2'.
  
(3) You now need to configure and compile openbabel. To do this, change
+
(3) What do you need to compile openbabel?
 +
 
 +
Requirements:
 +
* A C++ compiler (like g++)
 +
* A makefile system (like GNU make)
 +
 
 +
Optional tools/libraries:
 +
* Python is required to compile the Python bindings
 +
* Perl is required to compile the Perl bindings
 +
* SWIG is required to recreate the Python/Perl bindings (this is only necessary for developers...see below for more info)
 +
* libxml2 development headers are required to read/write CML files (the libxml2-dev package in Ubuntu)
 +
* zlib.h is required to support reading gzipped files (the zlib1g-dev package in Ubuntu)
 +
 
 +
(4) You now need to configure and compile openbabel. To do this, change
 
directory into 'openbabel-2.0.2'. Run the following commands, one after
 
directory into 'openbabel-2.0.2'. Run the following commands, one after
 
the other
 
the other
Line 25: Line 38:
 
If there are any errors at this point, send an email to the [mailto:[email protected] openbabel-discuss] mailing list and attach the files 'configure.out' and 'make.out'.
 
If there are any errors at this point, send an email to the [mailto:[email protected] openbabel-discuss] mailing list and attach the files 'configure.out' and 'make.out'.
  
(4) If you have root permissions, you should install openbabel globally.
+
If you look at the output of 'configure' you can see whether CML and gzip support will be included in openbabel (see Optional Libraries above).
 +
<pre>
 +
...
 +
checking for libxml - version >= 2.6.5...yes (version 2.6.21)
 +
...
 +
checking for zlib.h... yes
 +
</pre>
 +
 
 +
(5) If you have root permissions, you should install openbabel globally.
 
As root, run the following command:
 
As root, run the following command:
  
Line 32: Line 53:
 
</pre>
 
</pre>
  
(5) If you want to use OpenBabel from Python, you now need to compile the python extension. This may require an extra Python package depending on your Linux distribution. For example, for Debian you need the 'python-dev' package (installed using 'apt-get'); for SUSE, you need 'python-devel' (installed using YaST).
+
(6) If you want to use OpenBabel from Python, you now need to compile the python extension. This may require an extra Python package depending on your Linux distribution. For example, for Debian you need the 'python-dev' package (installed using 'apt-get'); for SUSE, you need 'python-devel' (installed using YaST).
  
 
Change directory to 'openbabel-2.0.2/scripts/python' and run:
 
Change directory to 'openbabel-2.0.2/scripts/python' and run:
Line 40: Line 61:
 
</pre>
 
</pre>
  
(6) To install the python interface globally, as root type:
+
(7) To install the python interface globally, as root type:
  
 
<pre>
 
<pre>
Line 46: Line 67:
 
</pre>
 
</pre>
  
(7) You may need to add the location of libopenbabel.so.1 (on my system, the location is /usr/local/lib) to the environment variable LD_LIBRARY_PATH if you get the following error when you try to import the OpenBabel library at the Python prompt:
+
(8) You may need to add the location of libopenbabel.so.1 (on my system, the location is /usr/local/lib) to the environment variable LD_LIBRARY_PATH if you get the following error when you try to import the OpenBabel library at the Python prompt:
 
<pre>
 
<pre>
 
$ python
 
$ python

Revision as of 09:47, 16 December 2006

Step-by-step Installation Instructions for OpenBabel

These instructions describe the installation procedure for OpenBabel 2.0.2. For more different releases, the version number will be different and you should take this in account when reading the instructions below. In addition, these instructions assume that you have root access.

(1) Download the latest version (2.0.2, currently)

(2) Open a command window, change directory into 'openbabel', and decompress the downloaded file with following command:

tar zxvf openbabel-2.0.2.tar.gz

This will create a folder called 'openbabel-2.0.2'.

(3) What do you need to compile openbabel?

Requirements:

  • A C++ compiler (like g++)
  • A makefile system (like GNU make)

Optional tools/libraries:

  • Python is required to compile the Python bindings
  • Perl is required to compile the Perl bindings
  • SWIG is required to recreate the Python/Perl bindings (this is only necessary for developers...see below for more info)
  • libxml2 development headers are required to read/write CML files (the libxml2-dev package in Ubuntu)
  • zlib.h is required to support reading gzipped files (the zlib1g-dev package in Ubuntu)

(4) You now need to configure and compile openbabel. To do this, change directory into 'openbabel-2.0.2'. Run the following commands, one after the other

./configure | tee configure.out
make | tee make.out

If there are any errors at this point, send an email to the openbabel-discuss mailing list and attach the files 'configure.out' and 'make.out'.

If you look at the output of 'configure' you can see whether CML and gzip support will be included in openbabel (see Optional Libraries above).

...
checking for libxml - version >= 2.6.5...yes (version 2.6.21)
...
checking for zlib.h... yes

(5) If you have root permissions, you should install openbabel globally. As root, run the following command:

make install

(6) If you want to use OpenBabel from Python, you now need to compile the python extension. This may require an extra Python package depending on your Linux distribution. For example, for Debian you need the 'python-dev' package (installed using 'apt-get'); for SUSE, you need 'python-devel' (installed using YaST).

Change directory to 'openbabel-2.0.2/scripts/python' and run:

python setup.py build

(7) To install the python interface globally, as root type:

python setup.py install

(8) You may need to add the location of libopenbabel.so.1 (on my system, the location is /usr/local/lib) to the environment variable LD_LIBRARY_PATH if you get the following error when you try to import the OpenBabel library at the Python prompt:

$ python
>>> import openbabel 
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/usr/lib/python2.4/site-packages/openbabel.py", line 9, in ?
   import _openbabel
ImportError: libopenbabel.so.1: cannot open shared object file: No such file or directory

Advanced Notes

  • If you need to recompile the SWIG bindings for the openbabel module, make sure you have the latest version of SWIG installed, and at Step (3) above, run configure as follows: ./configure --enable-maintainer-mode