導航:首頁 > 操作系統 > pyinstallerlinux打包

pyinstallerlinux打包

發布時間:2023-06-02 00:33:28

A. 使用PyInstaller打包python程序

PyInstaller是一個用來將Python程序打包成獨立可執行軟體的工具,支持 Windows、linux 和 Mac OS X。生成的可執行軟體在沒有Python的環境中可以直接運行,方便軟體分發,進一步降低使用成本,提升使用效率。

下面演示如何使用 PyInstaller 將程序打包成Windows下的exe軟體。

使用pip的方式進行安裝,這樣可以自動安裝其他依賴庫。

如果pip還未安裝,請參考我的另一篇文章《 Python pip包管理工具 》

在cmd命令行控制台或者VS Code內置的終端輸入命令行生成應用,首先將當前路徑切換到Python程序所在的路徑(如下示例的SubOcr.py文件在python文件夾下的SubOcr文件夾內),然後輸入生成應用的命令。

命令執行成功後在 I:workpythonSubOcrdist 文件夾下生成了SubOcr文件夾,裡麵包含了SubOcr.exe文件。整個SubOcr文件夾就是一個綠色軟體,隨便移動到任何位置都可運行。

實際上在用pyinstaller命令時會在Python程序的所在路徑生成一個後綴為spec的同名文件,然後根據此文件的配置生成應用,這就是PyInstaller的原理。這樣做的好處是spec保存了生成應用的配置,每次重新生成應用時可以省略指定參數,尤其是指定了其他的資源、程序庫時。我們可以通過以下命令先生成spec文件。

pyi-makespec的命令參數跟pyinstaller的相同,在生成spec文件後可以對其部分選項進行編輯(可以用VS Code或自帶的記事本編輯),添加更多參數,然後再用pyinstaller命令生成應用。

spec文件的主要選項:

上面示例的SubOcr用到了opencc和opencv-python,其中opencc下的數據文件和opencv-python下的dll文件在生成應用時不會自動導入(缺少這些文件應用無法正常使用),因此需要在spec文件中指定路徑。對spec文件的修改如下:

以上便是PyInstaller打包Python程序的全過程,如果在此過程中遇到問題,可以在評論區留言,定當知無不言,言無不盡。

B. 將Python程序打包成linux可執行文件

1.安裝環境

首先我們要安裝pip,命令如下:

使用的工具是 pyinstaller ,打開終端輸入sudo pip install pyinstaller

2.打包程序

首先在打包之前檢查一下我們的py文件是否可以正常執行,確認無誤後進行打包 pyinstaller -F car_tkinter.py          或者 python3 -m PyInstaller -F main.py

3.執行文件

進入我們打包存放的文件夾,打開終端,執行語句 ./car_tkinter       或者 nohup ./car_tkinter> data.log &

C. linux系統下,如何將python文件封裝成exe可執行文件

Python程序是標準的文本文件,由Python解釋執行,不可能封裝成可執行文件,只能以文本方式發布,造成不能版權保護,這是Python的一個弱點。

D. Linux下,Python項目包含多個模塊以及圖片包,跪問如何用pyinstaller將其打包在一起

python的模塊,pyinstall會自動編譯為位元組碼然後一起打包。
至於另外的圖片等資源文件,需要自行書寫打包配置文件spec。

先用pyinstaller 的 --onefile 選項自動生成一個spec文件,
然後修改這個spec文件案,如要加入圖片等附屬文件,
要加入到datas中,格式如下:
datas += [("軟體包內的相對路徑/file.name","/實際路徑/file.name","DATA")]

文件列表也可以用Tree生成。Tree("/實際路徑/file.name」, prefix = 「軟體包內的相對路徑」)
下面是一個spec文件的例子
a = Analysis(["/tmp/start.py"],
pathex=["/tmp"],
hiddenimports=[],
hookspath=None,
runtime_hooks=None
dict_tree = Tree("/tmp/pic", prefix = "pic")
a.datas += dict_tree
pyz = PYZ(a.pure)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name="test",
debug=False,
strip=None,
console=False )

E. 如何將python code 打包成linux系統下可執行

pyinstaller -w --onefile xx.py -n xx

不過我是mac下打的app包是這樣


UnicodeEncodeError是小問題 可以試試

  1. 頭加utf8識別

  2. import sys

sys.reload()

sys.defaultencoding('utf8') 不知道拼錯沒

3.print u』中文』 這樣是可以的。會轉成unicode編碼 如果這樣也是有問題 那麼按照前兩個操作就可以了 是因為你文件的編碼不對

閱讀全文

與pyinstallerlinux打包相關的資料

熱點內容
如何獲取伺服器dns秒解 瀏覽:663
如何破解大黃蜂的加密文件 瀏覽:11
新概念英語第三冊pdf 瀏覽:401
分項詳細估演算法步驟 瀏覽:436
ipad桌面文件夾放大 瀏覽:891
我的世界基岩版怎麼進國際伺服器 瀏覽:516
福州醫院有沒有解壓艙 瀏覽:470
帶pwm的51單片機 瀏覽:916
ace程序員指南源碼 瀏覽:414
哪個app可以分36期還款 瀏覽:243
為什麼安卓軟體平台那麼多 瀏覽:286
如果把伺服器切斷了怎麼辦 瀏覽:17
app建立網站需要什麼技術 瀏覽:689
迷你世界教你開雲伺服器 瀏覽:560
鋁窗下料用什麼app 瀏覽:842
天堂伺服器怎麼進 瀏覽:386
程序員汽車號碼 瀏覽:462
飛度空調壓縮機可以換大嗎 瀏覽:338
紫色系解壓視頻教程 瀏覽:360
與門單片機 瀏覽:714