2017-09-14 28 views
1

我有一個Python包與腳本與shebang #!/usr/bin/env python 。在我構建了這個包的輪子後,我檢查了.whl中的腳本,並且新的shebang是#!/path/to/some/virtualenv/bin/python。這是通向虛擬世界的途徑,當我構建車輪時,甚至不會有這樣的活躍。輪包腳本指向本地Python路徑

> which python 
#!/path/to/active/virtualenv/bin/python 

> which wheel 
#!/path/to/active/virtualenv/bin/wheel 

這打破了我的包的分佈。我怎樣才能解決這個問題?

+0

echo $ PATH的輸出是什麼? #!/ usr/bin/env搜索您當前的$ PATH並使用它找到的第一個python。 –

回答

1

拆分過程分爲2個階段:

python setup.py build --executable '/usr/bin/env python' && 
python setup.py bdist_wheel [--universal] 

build命令創建build/子目錄;當一個bdist_*命令(bdist_eggbdist_wheel)檢測到子目錄的存在時,它不會運行build命令,但會使用任何build放入build/

我在所有發佈腳本中都使用了這種方法。兩個例子:CheetahSQLObject

+0

修復它 - 謝謝! – chiroptera