[COLUG] Shared Libraries
Mark Erbaugh
mark at microenh.com
Sun Jul 6 23:50:07 EDT 2008
I've developed an application using Python with some add-on libraries.
I'm using cxFreeze to create a distributable version. I am using Ubuntu
Dapper as my development platform
cxFreeze is picking up most needed files, but when I try to install it
on a machine with a different version of Ubuntu (in this case, Kubuntu
Gutsy), the program complains about three missing shared libraries:
libpython2.4.s0.1.0
libsybdb.so.5
and
libpq.so.4
I can install the first two libraries from the Ubuntu repositories.
However, libpq.so.4 is not in the Gutsy repository, instead there is
libpq.so.5. Even if I install that, the program complains about
libpq.so.4.
If I copy libpq.so.4 from my Dapper workstation to the same directory as
my application on the Gutsy machine and execute ldconfig to add that
directory to the library lookup, the application runs. However, when I
re-boot, I sometimes have to re-run ldconfig. I also feel like I should
be adding libpq.so.4 to the same place (/usr/lib) as libpq.so.5.
I tried a couple of things which seemed to work. Is either the
"correct" solution?
1) libpq.so.5 was actually a symbolic link to libpq.so.5.0. I created a
new symbolic link named libpq.so.4 which also pointed to libpq.so.5.0. I
assume that this fools my program into using libpq.so.5 when it wants
libpq.so.4 and that the libraries are similar enough. As of yet, I
haven't thoroughly tested my program to see if the incompatibilities
cause problems.
2) I just copied libpq.so.4 into /usr/lib.
Is there a better solution?
Thanks,
Mark
More information about the colug432
mailing list