我正在研究發佈一個包含現有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']
?