gpt4 book ai didi

python - 在 Linux Mint 16 上安装适用于 Python 的 cx_Oracle

转载 作者:行者123 更新时间:2023-12-01 05:13:57 26 4
gpt4 key购买 nike

我已按照此处的说明进行操作 http://maxolasersquad.blogspot.com/2011/04/cxoracle-on-ubuntu-1104-natty.html在我的机器上安装 cx_Oracle。

我已经安装了适用于 Python 3.3 的 Oracle Client 11.2 和 cx_Oracle 11g,均为 64 位。使用 help('modules') 将 cx_Oracle 列为模块,但是我在导入时收到以下错误消息:

Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import cx_Oracle
ImportError: libclntsh.so.11.1: cannot open shared object file: No such file or directory

我似乎丢失了一个文件,但我不确定是否需要安装依赖项,或者某些配置是否未正确设置以指向客户端。

感谢您对此的协助。

编辑:

更新,当我运行 echo $ORACLE_HOMEecho $LD_LIBRARY_PATH 时,我现在得到了预期的值。但是,错误仍然显示。

最佳答案

如果您按照引用的指南进行操作,那么您还在 /etc/profile.d/ 中创建了一个脚本。确保此脚本以 .sh 结尾。

您的问题可能与从该目录加载脚本有关,我猜测这是因为您从非登录 bash shell 运行python。

要验证情况是否如此,请尝试使用 bash --login 调用 bash,或在现有 bash shell 中执行 source/etc/profile。然后检查变量 ORACLE_HOMELD_LIBRARY_PATH 是否定义了合理的值。

如果有效,AskUbuntu 的 /etc/profile.d 中的脚本有一些相关问题(和答案!),可能会有所帮助:

--

编辑:

环境变量是继承的 - 如果 shell 有一个变量,那么从该 shell 启动的任何内容都应该继承这些变量。

考虑到这一点,尝试这样做:

$ bash --login
$ python
>>> import os
>>> print os.environ.get('ORACLE_HOME', '<not set>')
>>> print os.environ.get('LD_LIBRARY_PATH', '<not set>')
>>> import cx_Oracle

关于python - 在 Linux Mint 16 上安装适用于 Python 的 cx_Oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23613669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com