linux打包运行python文件_Linux下安装pyinstaller用于将py文件打包生成一个可执行文件...
安裝使用流程
1. 首先給系統(tǒng)裝個(gè)easy_install, 如果裝了的可以跳過這步
到pypi官方網(wǎng)址 https://pypi.python.org/pypi/setuptools 去download最新版本
2. 官網(wǎng)上下載pyinstaller,當(dāng)前的最新版本是2.1
(1) 網(wǎng)址 http://www.pyinstaller.org/
https://github.com/pyinstaller/pyinstaller/wiki
3.解包進(jìn)入源碼目錄
(1)tar -zxvf pyinstaller_2.1.tar.gz
(2)cd pyinstaller-2.1 運(yùn)行 python setup.py install
4. 拷貝py文件
將需打包的py文件如test.py 拷貝到當(dāng)前目錄
5. 生成可執(zhí)行文件
python?pyinstaller_path/pyinstaller.py ? yourscript.py
命令完成后會(huì)在當(dāng)前目錄生成一個(gè)yourscript目錄,里面有build目錄,dist目錄。dist目錄里面還有一個(gè)yourscript目錄,這個(gè)里面就是生成的可直接運(yùn)行的程序和一些依賴的包了。
如果只想生成一個(gè)單一文件,就加上-F選項(xiàng)。
pyinstaller_path/pyinstaller.py ?-F ? yourscript.py
同樣在dist目錄下面會(huì)生成一個(gè)單一的可執(zhí)行文件。
可能遇到的問題
1. 用戶權(quán)限
直接在root用戶下運(yùn)行pyinstaller會(huì)報(bào)錯(cuò) “cannot run pyinstaller as user root"...
所以需新增另外一個(gè)用戶,并給用戶對(duì)pyinstaller所在的目錄及所有父目錄添加讀寫權(quán)限,避免運(yùn)行后報(bào)‘mkdir’ permission denied...
超級(jí)用戶可以創(chuàng)建新的用戶賬號(hào),下面的命令將建立一個(gè)名為joe的新用戶:
# adduser joe
# passwd joe (鍵入joe的口令)
切換用戶
su ?普通用戶名
把目錄/his及其下的所有文件和子目錄的屬主改成wang,屬組改成users。
$ chown –R wang.users /his
2. 找不到python lib動(dòng)態(tài)庫
su切換到新增用戶后,
pyinstaller報(bào)錯(cuò)找不到python動(dòng)態(tài)庫
raise IOError("Python library not found!")
IOError: Python library not
執(zhí)行python --version查看當(dāng)前版本,并查找/usr/local/lib 下有沒有對(duì)應(yīng)版本的libpython*.*.so文件,
如果有則跳過這步,如果沒有則需要重新安裝python,在python安裝配置中一定要加上--enable-shared參數(shù)就可以生成對(duì)應(yīng)動(dòng)態(tài)鏈接庫,如:
#./configure --enable-shared --prefix=/usr/local
#make
#make install
我環(huán)境中更新過python版本,導(dǎo)致/usr/lib下不是最新版本的庫文件,需要將新版本拷貝到對(duì)應(yīng)的/usr/lib目錄下,注意有兩個(gè)文件:
#cp libpython*.so /usr/lib/
#ln -s /usr/lib/libpython*.so.1.0 /usr/lib/libpython*.so
總結(jié)
以上是生活随笔為你收集整理的linux打包运行python文件_Linux下安装pyinstaller用于将py文件打包生成一个可执行文件...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 五分钟没有操作自动退出_遇到不喜欢的小动
- 下一篇: python列表迭代器_关于Python