centos下pyinstaller打包python程序

python的程序的缺點是: 需要提供源碼,如果不想讓源碼被第三方獲得累榜,可以將其打包成二進(jìn)制文件的形式谴垫。
pyinstaller就可以完成這個要求蜡镶。

安裝pyinstaller

get url
wget -c https://github.com/pyinstaller/pyinstaller/releases/download/v3.3.1/PyInstaller-3.3.1.tar.gz
tar -zxvf PyInstaller-3.3.1.tar.gz
python setup.py install
pyinstaller --version

編寫測試python程序

vim test.py

#!/usr/bin/python -w
# -*- coding:utf8 -*-

import os

def main():
    print("print the result of 'ls -al':")
    os.system("ls -al")

if __name__ == '__main__':
    main()

直接用python程序調(diào)用,結(jié)果如下:

[root@localhost proj]# python test.py
print the result of 'ls -al':
total 5
drwxrwxrwx  1 root root 4096 Jul  6 18:33 .
drwxr-xr-x. 4 root root   33 Jun 11 08:39 ..
-rwxrwxrwx  1 root root  174 Jul  6 18:22 test.py

pyinstaller打包

pyinstaller -F test.py

大寫的-F表示生成單一文件械巡。

運(yùn)行結(jié)果:

[root@localhost proj]# pyinstaller -F test.py
54 INFO: PyInstaller: 3.3.1
54 INFO: Python: 2.7.5
54 INFO: Platform: Linux-3.10.0-514.26.2.el7.x86_64-x86_64-with-centos-7.3.1611-Core
57 INFO: wrote /mnt/proj/test.spec
62 INFO: UPX is not available.
67 INFO: Extending PYTHONPATH with paths
['/mnt/proj', '/mnt/proj']
67 INFO: checking Analysis
68 INFO: Building Analysis because out00-Analysis.toc is non existent
68 INFO: Initializing module dependency graph...
71 INFO: Initializing module graph hooks...
121 INFO: running Analysis out00-Analysis.toc
140 INFO: Caching module hooks...
142 INFO: Analyzing /mnt/proj/test.py
1349 INFO: Loading module hooks...
1349 INFO: Loading module hook "hook-encodings.py"...
1825 INFO: Looking for ctypes DLLs
1825 INFO: Analyzing run-time hooks ...
1828 INFO: Looking for dynamic libraries
2263 INFO: Looking for eggs
2263 INFO: Using Python library /lib64/libpython2.7.so.1.0
2266 INFO: Warnings written to /mnt/proj/build/test/warntest.txt
2286 INFO: Graph cross-reference written to /mnt/proj/build/test/xref-test.html
2375 INFO: checking PYZ
2376 INFO: Building PYZ because out00-PYZ.toc is non existent
2376 INFO: Building PYZ (ZlibArchive) /mnt/proj/build/test/out00-PYZ.pyz
2562 INFO: Building PYZ (ZlibArchive) /mnt/proj/build/test/out00-PYZ.pyz completed successfully.
2635 INFO: checking PKG
2635 INFO: Building PKG because out00-PKG.toc is non existent
2635 INFO: Building PKG (CArchive) out00-PKG.pkg
5005 INFO: Building PKG (CArchive) out00-PKG.pkg completed successfully.
5031 INFO: Bootloader /usr/lib/python2.7/site-packages/PyInstaller-3.3.1-py2.7.egg/PyInstaller/bootloader/Linux-64bit/run
5031 INFO: checking EXE
5031 INFO: Building EXE because out00-EXE.toc is non existent
5032 INFO: Building EXE from out00-EXE.toc
5034 INFO: Appending archive to ELF section in EXE /mnt/proj/dist/test
5074 INFO: Building EXE from out00-EXE.toc completed successfully.
打包后生成的文件

生成的可執(zhí)行文件在dist目錄中刹淌。

[root@localhost proj]# cd dist
[root@localhost dist]# ls
test
[root@localhost dist]# ./test
print the result of 'ls -al':
total 4480
drwxrwxrwx 1 root root     144 Jul  6 18:25 .
drwxrwxrwx 1 root root    4096 Jul  6 18:26 ..
-rwxrwxrwx 1 root root 4581952 Jul  6 18:25 test

References:

https://www.pyinstaller.org/downloads.html
https://blog.csdn.net/aaronjzhang/article/details/8778338
https://www.cnblogs.com/LarryGen/p/5427102.html
https://www.cnblogs.com/alan-babyblog/p/5147770.html
https://www.cnblogs.com/zflibra/p/4180796.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市讥耗,隨后出現(xiàn)的幾起案子有勾,更是在濱河造成了極大的恐慌,老刑警劉巖葛账,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件柠衅,死亡現(xiàn)場離奇詭異,居然都是意外死亡籍琳,警方通過查閱死者的電腦和手機(jī)菲宴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來趋急,“玉大人喝峦,你說我怎么就攤上這事∥卮铮” “怎么了谣蠢?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長查近。 經(jīng)常有香客問我眉踱,道長,這世上最難降的妖魔是什么霜威? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任谈喳,我火速辦了婚禮,結(jié)果婚禮上戈泼,老公的妹妹穿的比我還像新娘婿禽。我一直安慰自己赏僧,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布扭倾。 她就那樣靜靜地躺著淀零,像睡著了一般。 火紅的嫁衣襯著肌膚如雪膛壹。 梳的紋絲不亂的頭發(fā)上驾中,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天,我揣著相機(jī)與錄音恢筝,去河邊找鬼哀卫。 笑死,一個胖子當(dāng)著我的面吹牛撬槽,可吹牛的內(nèi)容都是我干的此改。 我是一名探鬼主播,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼侄柔,長吁一口氣:“原來是場噩夢啊……” “哼共啃!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起暂题,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤移剪,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后薪者,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纵苛,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年言津,在試婚紗的時候發(fā)現(xiàn)自己被綠了攻人。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片陈瘦。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡解滓,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出给赞,到底是詐尸還是另有隱情初婆,我是刑警寧澤蓬坡,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站磅叛,受9級特大地震影響屑咳,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜弊琴,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一乔宿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧访雪,春花似錦详瑞、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至精置,卻和暖如春计寇,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背脂倦。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工番宁, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人赖阻。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓蝶押,卻偏偏與公主長得像,于是被迫代替她去往敵國和親火欧。 傳聞我的和親對象是個殘疾皇子棋电,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359

推薦閱讀更多精彩內(nèi)容