看板 Python 關於我們 聯絡資訊
爬文爬了很久,絕大多數都是要在另一台上面安裝 python 有辦法編出單一執行檔嗎? 我是用 mingw32 和 python2.5 去編譯的 編出來的exe放到沒裝python的電腦就是會跳出 "遺失 python25.dll" 我本來想說 libpytho25.a 直接static link 應該就可以編出純執行檔. 不過今天試了整天的結論好像不行. 另一個問題是linux上的 我下 gcc my.c -lpython2.5, 編出來的 a.out 丟到沒裝python的linux主機, 結果執行時缺少share library. 可是當我下 gcc my.c -static -lpython2.5時 全都是undef reference. 如果是這樣的話,那 libpython2.5.a 的用途是做什麼的? 用來產生 libpython2.5.so ? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.126.44.40
uranusjr:因為 libpython2.5.a 也是動態連結的, 你只包那個 lib 沒 08/09 23:11
uranusjr:用, 它裡面參照的 symbols 也要改才行 08/09 23:11
uranusjr:你需要 compile 一份靜態連結的 Python; 我沒研究過, 不 08/09 23:12
uranusjr:過這個或許也行? http://goo.gl/4L2gx 08/09 23:12
alongalone:謝謝樓上大大的指教,我還有知道一個叫static python 08/09 23:27
alongalone:不過那個只能在linux上跑(binary code);看來得硬幹了 08/09 23:28
COLDTURNIP:Try this: http://www.py2exe.org/ 08/09 23:34
COLDTURNIP:我曾在公司用這玩意做工具給產線用 08/09 23:35
COLDTURNIP:啊…我看反了,上面這只能 py call c,真是抱歉 orz 08/09 23:37
COLDTURNIP:要 call py 的話…試試 Boost.Python? 08/09 23:39
alongalone:boost是c++的..T__T 我相當不熟...orz 08/09 23:51
Falldog:PyInstaller? 08/10 13:04
alongalone:hi F大, installer應該是把py編成exe,跟我的需求有落差 08/10 13:16
juiz:最簡單的解法就是自己編一個 Python runtime 來用 08/10 21:02
yjc1:一定不能把 python25.dll 也放在同個目錄下嗎? 08/10 21:57