在Python virtualenv中导入自己的C模块

时间:2013-05-11 15:41:35

标签: python c import hyperlink virtualenv

我尝试将C代码导入到virtualenv中的Python脚本中。我设法将我的C代码与Python相关联,将setup.py安装到python中。但当我在我的virtualenv,我找不到我的模块,我不知道如何安装它与pip安装..

我解释了我的情况。我有一个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模块..

感谢您的回答,

PR。

1 个答案:

答案 0 :(得分:0)

我天真地试图将我的setup.py和foo.c压缩成foo.tar.gz并执行

(my_v_env)$pip install foo.tar.gz

它运作良好!

也许它会帮助其他人: - )

注意(docs.python.org/2/extending/building.html)该命令

$python setup.py sdist

创建一个tar.gz,你可以用pip以相同的方式安装..