* 背景
flask框架,使用sqlalchemy连接oracle
使用cx_oracle连接
* 问题
使用库连接的时候报错。报错信息如下:
File "build/bdist.macosx-10.11-intel/egg/cx_Oracle.py", line 7, in <module>
File "build/bdist.macosx-10.11-intel/egg/cx_Oracle.py", line 6, in __bootstrap__
ImportError: dlopen(/Users/yinghaiyun/.python-eggs/cx_Oracle-5.2.1-py2.7-macosx-10.11-intel.egg-tmp/cx_Oracle.so, 2): Library not loaded: /ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1
Referenced from: /Users/yinghaiyun/.python-eggs/cx_Oracle-5.2.1-py2.7-macosx-10.11-intel.egg-tmp/cx_Oracle.so
cx_Oracle はどのようにインストールされますか? pip を使用してコンパイルおよびインストールされますか?スタックを見ると、cx_Oracle.so が依存している libclntsh.dylib.11.1 が正常にロードされていないはずです
)あなたは Mac ですか? 前に述べたように、問題は cx_Oracle.so 自体も依存していることです。他のダイナミック ライブラリのバージョンが要件に一致しており、現在 Mac にそれらが存在しないことを確認する必要があります。Linux での依存関係を確認してください。
Mac の ldd に対応するコマンドは otool (http://blog.sina.com.cn/s/blog_630c58cb0...
ちなみに仮想環境で python -c "import cx_Oracle" を実行すると問題なく実行できました。しかし、pycharmで実行すると問題が発生する可能性があります。私はまだ問題を探しています
。