我尝试将C代码导入到在virtualenv中工作的Python脚本中。我设法将我的C代码与Python链接起来,将setup.py安装到Python中。但是当我在我的virtualenv中时,我找不到我的模块,我不知道如何使用pip install安装它。。
我解释我的处境。我有一个foo.c和一个与foo.c相关联的setup.py。我可以在python中安装它,而不会出现如下问题:
$sudo python2.7 setup.py install
然后在python2.7中:
$python2.7
>>>import foo
>>>foo.hello()
'hello word'
>>>
它工作得很好。
但是,在我的virtualenv(其中安装了几个模块)中,
source my_v_env/bin/activate
(my_v_env)$python2.7
>>>import foo
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named foo
>>>
找不到我的foo模块。我知道可以用“pip install{module}”安装模块,但在我的例子中,我不知道如何安装这个foo模块。。
谢谢你的回答,
公共关系。
最佳答案
我天真地试图将setup.py和foo.c压缩为foo.tar.gz并执行
(my_v_env)$pip install foo.tar.gz
而且效果很好!
也许它会帮助其他人:-)
注意(docs.python.org/2/extensing/building.html)命令
$python setup.py sdist
创建一个tar.gz,您可以用相同的方法用pip安装它。。
关于python - 在Python virtualenv中导入自己的C模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16498878/