Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cx_Oracle requires glibc_2.14 #131

Open
joergdietrich opened this issue Jun 23, 2017 · 7 comments
Open

cx_Oracle requires glibc_2.14 #131

joergdietrich opened this issue Jun 23, 2017 · 7 comments

Comments

@joergdietrich
Copy link

This may be a duplicate of #99 but with cx_Oracle

File "/home/dietrich/applications/anaconda3/lib/python3.5/site-packages/easyaccess-1.4.2-py3.5.egg/easyaccess/easyaccess.py", line 9, in
ImportError: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/dietrich/applications/anaconda3/lib/python3.5/site-packages/cx_Oracle-5.3-py3.5-linux-x86_64.egg/cx_Oracle.cpython-35m-x86_64-linux-gnu.so)

everything is installed using conda.

@mgckind
Copy link
Owner

mgckind commented Jun 26, 2017

Thanks @joergdietrich.

Matthias told me about this, I told me to try the below options
that's a weird error, it doesn't happen and I've built a special conda package for that,

Can you try an create a separate environment?

conda create -n easy easyaccess -v mgckind

and see if that works?

also, even within conda you can try and run pip install easyaccess (after cx_Oracle is installed). basically

conda install cx_Oracle -c mgckind (or from other channels)
pip install easyaccess

The installation of cx_Oracle requires the Oracle client which is always a pain to install, we have tried many ways but there is always some issue with it....

Let me know how those go,

@joergdietrich
Copy link
Author

$ conda create -n easy easyaccess -v mgckind
usage: conda [-h] [-V] command ...
conda: error: unrecognized arguments: mgckind
$ conda create -n easy python=3.6
[...]
$ conda install cx_Oracle -c mgckind
[...]
$ pip install easyaccess
Collecting easyaccess
[...]
$ easyaccess
[...]
ImportError: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/dietrich/applications/anaconda3/lib/python3.5/site-packages/cx_Oracle-5.3-py3.5-linux-x86_64.egg/cx_Oracle.cpython-35m-x86_64-linux-gnu.so)

Not surprising as the problem isn't in easyaccess but in the cx_Oracle you ship. There are no other conda sources for cx_Oracle on Python 3.

pip install cx_Oracle fails because the gcc version is too old:

$ pip install cx_Oracle
Collecting cx_Oracle
  Downloading cx_Oracle-5.3.tar.gz (129kB)
[...]
  cc1: error: unrecognized command line option "-Wno-unused-result"
  error: command 'gcc' failed with exit status 1

We can't update gcc because the Linux distribution version is fixed by requirements from the Euclid satellite.

@mgckind
Copy link
Owner

mgckind commented Jun 27, 2017

Thanks, yes I built that version considering fitsio which in some machines had the old GLIB library, this might be tricky. Would another python version work (2.7) ? I would assume no since I built all of them the same way.
The solution I can think of right now would be to install the oracle client by itself using this:
https://anaconda.org/anaconda/oracle-instantclient

then doing pip easyaccess might work as it'll build the package from source, everything can be pip installed except the oracle client. Let me know if that works

Thanks!

@joergdietrich
Copy link
Author

In Python 2.7 I can install cx_Oracle from anaconda (there's no Python 3 package from them). Then pip install easyaccess works.

@joergdietrich
Copy link
Author

I don't quite understand yet why you built fitsio with glibc 2.12 while cx_Oracle is built with 2.14. conda install easyaccess -v mckind pulls glibc 2.12 from your channel. Why can't is just pull 2.14 if you build with that?

@kadrlica
Copy link
Collaborator

kadrlica commented Oct 4, 2017

I've also run into this problem on RHEL6 and SL6. The GLIBC features are a continual thorn in the side of easyaccess installation...

@kadrlica
Copy link
Collaborator

kadrlica commented Oct 4, 2017

As a note for future me (and possibly others) I got this to work with:

conda remove cx_oracle
conda install cx_oracle=5.1.2
pip install easyaccess

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants