我正在将构建从make转换为scons。该程序包含python代码,cuda和c ++。在make的末尾,调用“python setup.py install”以在site-packages中正确安装模块。我怎么在scons中调用它?将工作的setup.py文件中的所有代码复制到scons脚本中似乎没有效率。
答案 0 :(得分:1)
查看scons Command builder。使用“命令”构建器,您可以像在命令行中一样运行任何命令。
env = Environment()
...
py_install = env.Command('always.install', ['setup.py'],
'python setup.py install')
Alias('install', py_install)
在上面的示例中,我使用虚拟目标 always.install 来强制安装命令始终运行(还有其他方法可以执行此操作,但这是另一个主题)。依赖项列表仅包含 setup.py 文件,您可能在此处列出了其他依赖项。第三项是命令行。建议扫描scons Users Guide;那里有很多有用的信息。