-
Notifications
You must be signed in to change notification settings - Fork 364
Description
For general questions:
The latest 6.0 release appears to have an issue (had this on linux ubuntu/16.04) with the unicode version python was compiled with. I believe the wheels were built assuming a python with ucs2
unicode support, while the actual target python is ucs4
unicode.
We hit an ImportError
:
ImportError: /foo/bar/venv/local/lib/python2.7/site-packages/cx_Oracle.so: undefined symbol: PyUnicodeUCS2_Decode
Target python is ucs4
:
$ python -c "import sys; opts = {1114111: 'ucs4', 65535: 'ucs2'}; print(opts.get(sys.maxunicode));"
ucs4
-
What is your version of Python? Is it 32-bit or 64-bit?
64-bit -
What is your version of cx_Oracle?
6.0 -
What is your version of the Oracle client (e.g. Instant Client)? How was it
installed? Where is it installed?
instantclient version installed: 12.1.0. Installed via npm @ /opt/oracle/instantclient. -
What is your version of the Oracle Database?
irrelevant. -
What is your OS and version?
Ubuntu 16.04 -
What compiler version did you use? For example, with GCC, run
gcc --version
.
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 (irrelevant) -
What environment variables did you set? How exactly did you set them?
ORACLE_HOME
, set ld cache viasudo ldconfig
and the corresponding file in/etc/ld.so.conf.d
-
What exact command caused the problem (e.g. what command did you try to
install with)? Who were you logged in as?
python -c "import cx_Oracle;"
- What error(s) you are seeing?
ImportError: /foo/bar/venv/local/lib/python2.7/site-packages/cx_Oracle.so: undefined symbol: PyUnicodeUCS2_Decode