0

I have tried many ways of installing psycopg2 after having installed PostgreSQL using the one-click installer, but anyway I try confronts me with the same import error in python: ImportError: dlopen(/Library/Python/2.5/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: libpq.5.dylib Referenced from: /Library/Python/2.5/site-packages/psycopg2/_psycopg.so Reason: image not found

I am on Mac OS X 10.5.8. I am using Python 2.5. I installed PostgreSQL from the installer (I did not port it) and it installed in /Library). I added /Library/PostgreSQL/9.1/bin to the setup.cfg of the source psycopg2, as instructed in the INSTALL file and everywhere on the internet and then ran sudo python setup.py build and then sudo python setup.py install. I also tried exporting /Library/PostgreSQL/9.1/bin to my path instead and running sudo pip install psycopg2. But the exact same problem occurred in all of these scenarii. I would greatly appreciate some help with this.

Best Marion

user2054545
  • 161
  • 3
  • 9

1 Answers1

4

The problem is that at runtime the libpq.5.dylib file can't be found because it is not in one of the default locations searched by the dynamic (runtime) linker. Try to define the environment variable DYLD_LIBRARY_PATH before launching python. I am no MacOS X expert but something like:

export DYLD_LIBRARY_PATH=/Library/PostgreSQL/9.1/lib

will probably work.

fog
  • 3,266
  • 1
  • 25
  • 31
  • Hi and thanks! I had tried that before posting this question as well, to no avail. What did end up working was to put the .so file from psycopg2 into the LD_LIBRARY_PATH. export LD_LIBRARY_PATH=/Library/Python/2.5/site-packages/psycopg2:${LD_LIBRARY_PATH} – user2054545 Feb 14 '13 at 22:46
  • 1
    If somebody can explain why one solution works and not the other (which is the one I had found on various posts and questions on the web), it'd be awesome. – user2054545 Feb 14 '13 at 22:46