Python Setup.py Build_Ext --inplace
Posted
技术标签:
【中文标题】Python Setup.py Build_Ext --inplace【英文标题】: 【发布时间】:2014-12-21 20:42:06 【问题描述】:我正在使用以下命令构建一个 Cython 程序(例如 testpackage):
python setup.py build_ext --inplace
在/home/USER/Documents/testpackage/
之类的文件夹中。构建成功运行,但是当我 cd 进入另一个文件夹时,我无法再使用模块 testpackage
。是否可以运行另一个命令而不是 --inplace
,以便我可以在 Python 中的任何文件夹中使用 import testpackage
?我查看了anaconda/lib/python2.7/site-packages/
文件夹,并没有在任何地方看到对testpackage
的任何引用。这是 Cython 构建的标准吗?
注意:我是通过使用conda build testpackage
的.sh 文件执行此操作的,因此python setup.py build_ext --inplace
命令实际上在shell 文件中。
感谢您的帮助。
【问题讨论】:
【参考方案1】:--inplace 选项在当前目录中创建共享对象文件(带有 .so 后缀)。要从 python 中使用这个模块,这个文件必须在 python 路径(sys.path)中。
安装到系统python文件夹运行
python setup.py build_ext
sudo python setup.py install
如果您没有管理员权限,也可以使用本地安装
python setup.py build_ext
python setup.py install --user
【讨论】:
以上是关于Python Setup.py Build_Ext --inplace的主要内容,如果未能解决你的问题,请参考以下文章
在 unix 上为 python 3.5 安装 psycopg2 包
python 从setup.json读取的示例setup.py