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 &
⑵ 使用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程序的全過程,如果在此過程中遇到問題,可以在評論區留言,定當知無不言,言無不盡。
⑶ Linux打包Python文件為RPM格式
花費了將近一周的時間,才把rpm打包弄好.不能說已經瞭然於胸,但至少踩過了很多坑.接下來就順順在打包過程中的二三事.剛開始接到任務的時候,一臉懵逼.
作為專業的 JAVA Web 程序員,確定要讓我干這么跨界的事情嗎?之前自己雖然也安裝過其他的rpm包,但我保證,我只是看說明書,跟著一路弄下來的.並且之後對它可是有多遠躲多遠的.不過考慮到自己的title,我知道那不應該是我關心的事情.那麼問題來了,什麼是rpm呢?
看到了rpm是什麼,我們就來了解一下RPM相關的命令
本來准備直接 rpm -help 讓大家看看相關參數的,但是考慮到內容太多,感興趣的 自行點擊 .這里放幾個常用的命令.
至此,基本的rpm基礎已經了解到了.那麼關鍵的問題來了,如何製作RPM
把製作RPM,道上傳聞有多種方式,我自己測過的有兩種
注意:無論上述那種都需要 setup.py 及 setup.cfg 文件,描述相關的軟體信息.
我自己使用的是第二種rpmbuild,
至此就可以歡快的進行打包了.執行
以上命令運行成功後會在當前用戶目錄下生成rpmbuild目錄,該目錄會包含以下子目錄
--BUILD #編譯之前,如解壓包後存放的路徑 --BUILDROOT #編譯後存放的路徑 --RPMS #打包完成後rpm包存放的路徑 --SOURCES #源包所放置的路徑 --SPECS #spec文檔放置的路徑 --SPRMS #源碼rpm包放置的路徑
安裝成功後,即可直接執行相關命令了.
rpmbuild
⑷ linux系統下,如何將python文件封裝成exe可執行文件
Python程序是標準的文本文件,由Python解釋執行,不可能封裝成可執行文件,只能以文本方式發布,造成不能版權保護,這是Python的一個弱點。
⑸ 如何在linux平台將python封裝成exe文件,我用cxfreeze試過,生成了linux下的可執行文件,無法生成exe文件
你先要知道的是,對於:
可執行文件:
linux下有對應的ELF類的,就是你生成的,是可以執行的;
windows下:才叫做exe,是對應的別的格式的;需要在Windows平台下去打包,才能生成exe格式的。
所以,對於你的問題的答案是:
的確是無法在linux下生成exe的,是正常的。
如果非要生成,則需要到windows下去折騰,才能生成exe。
詳見:
【記錄】用cx_Freeze把Python代碼打包成單個獨立的exe可執行文件
更建議用,更好用的:PyInstaller,詳見:
【記錄】用PyInstaller把Python代碼打包成單個獨立的exe可執行文件
⑹ 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 )
⑺ 如何打包python文件
最近寫了一個小小的程序,需要進行封裝exe,為了簡單,就直接用了pyinstaller這個模塊,對於python3.6版本的童鞋來說,簡直方便的不要。下面就給大家介紹一下如何用pyinstaller去封裝程序為exe程序。
首先,需要安裝一下pip這個應用,這個已經在前面的文章中說過了,windows和linux都有請借鑒windows和linux。
第二步,安裝好pip之後,在cmd命令窗口中輸入pip install pyinstaller即能安裝上pyinstaller,那麼接下來要介紹一下關於pyinstaller幾個指令了:
-w指令
直接發布的exe應用帶命令行調試窗口,在指令內加入-w命令可以屏蔽;
-F指令
注意指令區分大小寫。這里是大寫。使用-F指令可以把應用打包成一個獨立的exe文件,否則是一個帶各種dll和依賴文件的文件夾;
-p指令
這個指令後面可以增加pyinstaller搜索模塊的路徑。因為應用打包涉及的模塊很多。這里可以自己添加路徑。不過經過筆者測試,site-packages目錄下都是可以被識別的,不需要再手動添加。
那麼通常是使用-F指令,使用的語法是:pyinstaller -F (python程序名稱).py