我的Python项目依赖于C ++程序。我想创建一个python包,将该程序编译并安装到虚拟环境中。该程序应出现在当前路径中。
我尝试使用ext_modules
选项注册源文件,但它会创建.so模块。不完全是我需要的。
有没有办法实现这个目标?
答案 0 :(得分:0)
你可以在python中运行shell命令,这应该足以编译代码。
import os
os.system ("make -C /path/to/makefile")
您还可以将结果对象文件作为子进程运行;
import subprocess
theCProcess = subprocess.Popen('/path/to/object/file')
或
theCProcess = subprocess.Popen(['/path/to/object/file', 'some', 'extra', 'arguments'])
你对PATH的意思是什么?你的意思是bash PATH变量?通常,它应保持为/usr/local/bin:/usr/bin:/bin
不变,您可以将二进制文件放在这些目录中,但前提是您希望它在系统范围内可用。