cx_oracle 5.2.1 setup.py如何自动找到它的构建依赖项?

时间:2012-09-20 21:47:27

标签: python build dependencies cx-oracle setup.py

我下载了cx_oracle 5.2.1并开始构建:

  python setup.py build

我注意到它在我的系统中发现了构建依赖关系而没有任何规范。我想更好地理解它是如何做到的。 setup.py中的内容不表示任何此类信息。

1 个答案:

答案 0 :(得分:0)

我现在没有cx_Oracle的setup.py源代码,但是在它附带的BUILD.txt文件中,它提到了一些环境变量的使用:

  

有必要设置环境变量ORACLE_HOME和   LD_LIBRARY_PATH在$ HOME / .profile里面,以便cx_Oracle导入   安装后正确,以便正确构建。用一个   文本编辑器将以下设置添加到$ HOME / .profile确保   更改实际安装路径的位置。

Example ($HOME/.profile):
-------------------------
export ORACLE_HOME=[your installation path]/instantclient_11_1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME

这是关于Linux提示的部分,我记得我必须设置相同的东西来在Windows下构建它。

至于如何找到更多标准库。我认为这是distutils模块神奇的一部分。在unix下,只要通过unix的标准打包机制安装了所需的库和头文件,distutils通常就可以正常工作。这可能是因为unix有更好的标准化方法来定位构建资源(比如Windows)。

我知道当我被迫在Windows下编译Python包时,我经常要明确告诉它在哪里找到头文件和库。在不得不出去找到所说的库并手动编译之后。