On Thu, Apr 5, 2012 at 4:11 AM, Scott Chapman <sc...@mischko.com> wrote:
> Downloaded > http://get.enterprisedb.com/postgresql/postgresql-9.1.3-1-linux.run > Ran it. Install went fine. > StackBuilder install of PostGIS 1.5 failed. No error given. I can't > find it in the logs. So I ran /tmp/edb_postgis_1_5_pg91.bin by hand. > Everything went fine there. > > Then I wanted to install psycopg2 (2.4.5) so I can use PG with Python: > > $ python setup.py build > running build > running build_py > running build_ext > Error: pg_config executable not found. > > Please add the directory containing pg_config to the PATH > or specify the full executable path with the option: > > python setup.py build_ext --pg-config /path/to/pg_config build ... > > or with the pg_config option in 'setup.cfg'. > > $ export PATH=$PATH:/opt/PostgreSQL/9.1/bin/ > > Then the build worked fine. > > # export PATH=$PATH:/opt/PostgreSQL/9.1/bin/ > # python setup.py install > > That worked. > > Then try to import it in Python: > > $ python > Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) > [GCC 4.4.3] on linux2 > Type "help", "copyright", "credits" or "license" for more information. > >>> import psycopg2 > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File "/usr/local/lib/python2.6/dist-packages/psycopg2/__init__.py", > line 67, in <module> > from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID > ImportError: libpq.so.5: cannot open shared object file: No such file > or directory > >>> > > So I think I need to add the library path to ldconfig. > > /etc/ld.so.conf.d# echo "/opt/PostgreSQL/9.1/lib/">postgresql.conf > root@schapman-desktop:/etc/ld.so.conf.d# ldconfig > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libproj.so.0 is not a > symbolic link > > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libpgtypes.so.3 is not a > symbolic link > > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libgeos-3.3.0.so is not a > symbolic link > > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libgeos_c.so.1 is not a > symbolic link > > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libpq.so.5 is not a symbolic > link > > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libecpg.so.6 is not a > symbolic link > > /sbin/ldconfig.real: /opt/PostgreSQL/9.1/lib/libecpg_compat.so.3 is > not a symbolic link > > Now I can import psycopg2 into Python and all seems well. > > So I was working with stuff and went to unmount my usb stick: > > $ umount /media/patriot > > and I got this wierd error: > umount: /opt/PostgreSQL/9.1/lib/libuuid.so.1: no version information > available (required by /lib/libblkid.so.1) > > And I'm stumped. I think the EnterpriseDB build is using a different > version of some library than Ubuntu 10.04 has? > Yeah. That's the case. And, one of the reason, we (EnterpriseDB Installer team) do not include the PostgreSQL path in the ldconfig. > > If I undo the ldconfig change, the error goes away, but psycopg2 won't > load. Can reconfigure the psycopg2 with this rpath? python setup.py clean python setup.py build_ext --pg-config <PG_CONFIG_PATH> --rpath <PG_LIB_DIR> .. i.e. python setup.py build_ext --pg-config /opt/PostgreSQL/9.0/bin/pg_config --rpath /opt/PostgreSQL/9.0/lib ... Hope - this will help. -- Thanks & Regards, Ashesh Vashi EnterpriseDB INDIA: Enterprise PostgreSQL Company<http://www.enterprisedb.com/> *http://www.linkedin.com/in/asheshvashi*<http://www.linkedin.com/in/asheshvashi> Clues appreciated! > > Scott > > -- > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general >