如何使用python包源代码而不是在安装后使用它

时间:2017-06-16 05:32:29

标签: python

我想将psycopg2用于数据库操作。但是,由于代码将被打包并发送,因此我无权将其安装在将使用它的远程服务器上。您能告诉我如何直接使用tar.gz捆绑包中的代码吗?我已将路径放在site-packages中,但仍然获得ImportError。任何人都可以告诉我如何为psycopg2这样做,以及我们想要直接使用的任何python包而无需安装,只需使用源代码?

1 个答案:

答案 0 :(得分:0)

对于大多数python软件包/模块,您应该能够在不安装模块的情况下构建模块:

python setup.py build

并从./build目录复制构建的模块/包并使用它。在psycopg2包的情况下,我开始克隆psycopg存储库:

git clone git@github.com:psycopg/psycopg2.git

然后构建它:

cd psycopg2
python setup.py build

然后我将包目录复制到我自己的代码所在的新目录:

cp -a build/lib.linux-x86_64-3.6/psycopg2 ~/myproject

并导入它:

cd ~/myproject
python

Python 3.6.1 (default, Mar 27 2017, 00:27:06) 
[GCC 6.3.1 20170306] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import psycopg2

注意 psycopg2是一个C绑定,因此在构建时编译代码。因此,构建包仅在具有与您自己的架构相同的架构的机器上运行。

相关问题