views:

128

answers:

2

I'm getting an error whilst trying to install psycopg2 on ubuntu 9.10 64 bit.

The error is:

>>> import psycopg2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "psycopg2/__init__.py", line 69, in <module>
    from _psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: psycopg2/_psycopg.so: undefined symbol: PyUnicodeUCS2_Decode

I've tried downloading the package from http://initd.org/pub/software/psycopg/ and installing it. I've tried by using easy_install too.

No error during the installation.

It's quite weird as my python (2.6.2) has been compiled with UCS4 and so the installation should just work without problems.

Any help would be appreciated.

Cheers

A: 

Like you say, your Python has been built UCS4. But the psycopg2 you're trying to install has been built against a Python built UCS2. Find one or build one against UCS4.

Ignacio Vazquez-Abrams
Tnx but this is exactly what python ./setup.py buildand python ./setup.py installshould do.
Marco Fucci
A: 

fixed it.

I had to recompile python with --enable-unicode=ucs4.

Still not clear why as the default version on ubuntu uses ucs4.

Marco Fucci