To build PyEO, a number of steps are neccessary. PyEO depends on Boost.Python v2, which in turn expects the presence of python2.2. As we can't expect people to have this installed some instructions are in order to help people build PyEO.so First of all, currently Windows is not supported. I don't develop on windows and don't have access to a compiler on it. PyEO has been developed on Debian, using gcc 2.95-4. My primary platform is debian, so the default Makefile provides for that. Below you will also find instructions for rpm-based distributions. As far as I know this includes RedHat, Mandrake, Suse, Yellowdog, and probably a lot more. If I recall correctly, the RPM format is the LSB default. ===== Building PyEO on Debian ===== Point your /etc/apt/sources.list to the unstable distribution (if it's not there already), and install: for Python: $ apt-get install python2.2 $ apt-get install python2.2-dev It might also be a good idea to install the numeric library $ apt-get install python2.2-numeric For Boost.Python: $ apt-get install libboost-python1.29.0 $ apt-get install libboost-python-dev If all goes well, this will also install libstlport. If it doesn't, $ apt-get install libstlport4.5 and maybe $ apt-get install libstlport4.5-dev but I'm not sure about the latter. Now you can type $ make And after (a long) wait, a file called PyEO.so will be produced. ===== Building PyEO on an RPM-based Distro ===== The following recipe has only been tested on a RedHat 7.1 installation, on other systems some stuff might be different. == Getting Python2.2 == If you don't have python2.2 installed (newer distro's install this by default), you can either install it from a binary specifically build for your distro, or you can build it from source by going to: http://www.python.org/2.2.1/rpms.html and getting the source by clicking the link to python2-2.2.1-2.src.rpm This actually links to: http://www.python.org/ftp/python/2.2.1/rpms/python2-2.2.1-2.src.rpm for your convenience I mirrored this file at: http://www.cs.vu.nl/~mkeijzer/PyEO/python2-2.2.1-2.src.rpm by usuing the command: $ rpm --rebuild python2-2.2.1-2.src.rpm or with newer versions of rpm $ rpmbuild python2-2.2.1-2.src.rpm It will build a binary rpm for your computer. On this Redhat 7.1 box it put the RPMS it build in /usr/src/redhat/RPMS/i386/ The ones you need to install are: python2-2.2.1-2.i386.rpm python2-devel-2.2.1-2.i386.rpm But you might want to install the rest as well. == Getting Boost.Python == First of all, do a quick check. At the prompt type: $ python If you see something like: Python 2.2.2 (#4, Oct 15 2002, 04:21:28) [GCC 2.95.4 20011002 (Debian prerelease)] on linux2 Type "help", "copyright", "credits" or "license" for more information. (don't mind the second line, It's the version info we're interested in) You're set to go. Unfortunately, on this Redhat 7.1 box I tested things on, /usr/bin/python insisted on pointing to /usr/bin/python1.5 . Unfortunately, the boost source rpm depends on python to provide 2.2. If this is the case on your machine as well, there are two possible fixes (of which one I tested). /usr/bin/python is a symlink, let it point to /usr/bin/python2.2 (this one I tested) DON'T forget to repoint /usr/bin/python to /usr/bin/python1.5 after you build the boost libraries: Redhat tools depend on this! or alias python=/usr/bin/python2.2 (which would be better if it works, but untested.) So given that you are in a shell that uses python2.2 if you issue the command 'python', get two boost source rpms at: http://www.starostik.de/malte/boost/ namely boost-jam-3.1.3-1.src.rpm boost-1.29.0-2.src.rpm Which I also mirrored at http://www.cs.vu.nl/~mkeijzer/PyEO/boost-jam-3.1.3-1.src.rpm http://www.cs.vu.nl/~mkeijzer/PyEO/boost-1.29.0-2.src.rpm First build and install jam using either rpm --rebuild or rpmbuild. The file you have to install is: boost-jam-3.1.3-1.i386.rpm This is the 'make' replacement that is used by boost. Next, build boost-1.29.0.src.rpm using 'rpm --rebuild' or 'rpmbuild' The only rpm's that this procedure produces that you need to install is: boost-python-1.29.0-2.i386.rpm boost-python-devel-1.29.0-2.i386.rpm When installing boost-python-devel, I got a dependency problem with libpython-dev, this was probably caused by the same problem I had with python2.2, python1.5. I ignored it by using: $ rpm -i --nodep boost-python-devel-1.29.0-2.i386.rpm and you're all set to type $ make -fMakefile.rpm in the PyEO build directory ==== Testing PyEO========== After building go to the test directory and type $ ./run_tests.sh If you don't see errors, all is well and you're ready to go