我正在研究发布一个包含现有fortran或C程序的python包。该Fortran/C程序是通过运行编译代码的Python包
./configure
make
的Python代码调用通过子进程调用生成的二进制(即,代码是不是真的包装成这样的)编译。我想的是,当用户键入
python setup.py install
该Fortran/C程序中使用./configure
和make
命令首先编译,然后我想将要安装的Python模块,并安装在二进制python bin/
目录以及通常通过distutils.core.setup
中的scripts=
选项安装的可执行文件。
首先,这样做有什么问题吗?如果不是,通过setup.py
做什么是最好的方法?是否有现有的功能来自动化./configure
和make
,因为这是非常标准的?或者我应该只使用os.system
来电?无论哪种方式,这些命令应该在setup.py
?那么我是否应该让make
将二进制输出到例如scripts/
然后在setup()
函数中有scripts=['scripts/mybinary']
?