2013-04-04 56 views
0

我有一個python腳本,我想用py2app打包成Mac應用程序包。該腳本調用CLI可執行文件。在py2app應用程序中嵌入可執行文件

如何將該可執行文件嵌入應用程序包中?

我試圖編輯setup.py以便將它包含爲資源但在這種情況下,執行權限會丟失。而且py2app的strip階段會產生一個錯誤。我想知道是否有一個特定的setup.py選項可以複製內容/ MacOS而不是內容/資源的可執行文件。

回答

1

將CLI可執行文件添加到資源中是正確的方法,但由於py2app中的錯誤(此時不復制文件權限)而無法工作。

最簡單的解決方法是在調用py2app後重置文件權限。

+0

閱讀[接受的答案](http://stackoverflow.com/a/11371197/45249)到[可以使用py2app製作的可執行文件包括其他終端腳本並運行它們](http://stackoverflow.com/q/11370012/45249)的問題,我明白它看起來更像是一個功能,而不像一個錯誤。除非沒有更合適的存在,否則我會盡量避免這種解決方案無論如何感謝您的回答。 – mouviciel 2013-04-08 08:59:28

+0

這確實是一個錯誤,它將在下一個py2app發行版中修復(希望本週晚些時候)。在當前的py2app發行版中有佔位符代碼,應該複製文件權限,但該代碼還沒有實際實現(主要是因爲py2app可以從壓縮的python安裝中複製文件,並且從中獲得正確的權限比只是調用os.stat)。 – 2013-04-08 09:04:12

+0

這是個好消息! – mouviciel 2013-04-08 09:05:48

相關問題