Skip to content
Gijs Molenaar edited this page Feb 13, 2014 · 4 revisions

The Evil Symlink Kludge

EDIT: this is now taken care of in the Makefile.am, I'm only leaving the page up for historical purposes.

When Python executes an import statement that is meant to load a shared library, it will look for the file modulename.so. Thus, the octopython module is built as octopython.so to keep Python happy.

Unfortunately, automake by default assumes all dependencies libraries have a lib prefix. Thus, when it generates a Makefile for the PyApps module which needs to be linked against octopython, it looks for liboctopython.so. This is an open bug in our Bugzilla database: http://lofar9.astron.nl/bugzilla/show_bug.cgi?id=6

Hence, an evil but necessary kludge until Ger gets automake to submit to our wishes is:

    $ cd ~/LOFAR/Timba/OCTOPython/build/gnu3_debug/src
    $ ln -s octopython.la liboctopython.la

This needs to be repeated for each build variant (gnu3_opt, etc.) that you plan to use.

If you skip this step, PyApps will complain about a missing liboctopython.la during the build.

Clone this wiki locally