所以我找到了Help installing cx_Oracle,但仍然卡住了。我从oracle下载了最新的instantclient,并将ORACLE_HOME设置为解压缩文件的位置(直接和ORACLE_HOME值与文件之间的bin文件夹),但easy_install在运行setup.py时弹出错误说它可以'找到Oracle包含文件。我注意到文件夹中只有11g dll,我是否需要所有3个驱动程序才能完成设置?如果是这样,我在哪里获得它们?
老实说,从他们拥有的binary installers中安装cx_Oracle比从源代码安装cx_Oracle要容易得多。
oracle-instantclient<version>-basic-<version_full>.<arch>.rpm
oracle-instantclient<version>-sqlplus-<version_full>.<arch>.rpm
oracle-instantclient<version>-devel-<version_full>.<arch>.rpm
。$ sudo alien -i oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
/etc/environment
然后注销/重新加载env):
ORACLE_HOME=/usr/lib/oracle/<version>/client64/lib/
LD_LIBRARY_PATH=/usr/lib/oracle/<version>/client64/lib/
$ sudo ln -s /usr/include/oracle/<version>/client $ORACLE_HOME/include # for 32bits arch, OR
$ sudo ln -s /usr/include/oracle/<version>/client64 $ORACLE_HOME/include # for 64bits arch
/etc/ld.so.conf.d/oracle-instantclient<version>-basic.conf
和/etc/ld.so.conf.d/oracle.conf
(对于更新的版本,至少从12.1开始)包含:
/lib
/usr/lib/oracle/<version>/client/lib ; for 32bits arch, OR
/usr/lib/oracle/<version>/client64/lib ; for 64bits arch
-v
标志):
$ sudo ldconfig
您可能需要安装libaio1
。
假设我们已经安装了Oracle Instant Client 10,您可以使用不同的替代方法来安装cx_Oracle:
$ pip install cx_oracle
(仅限linux)旧版本(小于5.1.2的版本是.msi和.rpm文件)可以从here下载。使用外星人安装RPM。例如,在撰写本文时:$ sudo alien -i cx_Oracle-5.0-10g-py25-1.x86.rpm
要测试,python -c 'import cx_Oracle; print cx_Oracle'
应该返回其版本的模块。
第1步检查python是32位还是64位
import platform
platform.architecture()[0]#'32bit'
或者第2步安装oracle客户端(32位或64位取决于步骤1中的python版本)
步骤3为python 2.7安装vcforpython27或visual c ++ 2008 express edition
安装cx_Oracle
error: Unable to find vcvarsall.bat
如果正确遵循上述所有步骤,那么它应该有效。想出这个问题花了很多痛苦。我希望它会有用。
建议运行:
the easy step: pip install cx_oracle
pip install --upgrade setuptools
from : https://stackoverflow.com/questions/2667069/cannot-find-vcvarsall-bat-when-running-a-python-script
注意:要求用户使用OTN(oracle tech网络帐户)进行身份验证。
1.1。下载“Instant Client Package - Basic”并将其解压缩到C:\ Python27 \ Scripts \ instantclient_11_2,例如instantclient-basic-windows.x64-11.2.0.4.0.zip
1.2。下载“Instant Client Package - SDK”并将其解压缩到C:\ Python27 \ Scripts \ instantclient_11_2,例如instantclient-sdk-windows.x64-11.2.0.4.0.zip
成功输出:http://www.oracle.com/technetwork/topics/winx64soft-089540.html