用PyInstaller将python转成可执行文件exe笔记

原文地址:http://www.pugwoo.com/2010/02/10/pyinstaller.html

1、安装PyInstaller

PyInstaller的作用如标题所说,首先需要下载PyInstaller和UPX,UPX是用来压缩exe的,点击超链接下载吧,目前稳定版本是1.3,注意选择你使用的操作系统。如在Windows下,将下载解压后的upx.exe放到PyInstaller解压后的文件夹内。设PyInstaller的文件夹为D:\PyInstaller,下同。命令行下进入D:\PyInstaller,运行Configure.py,应该看到如下信息:

I: computing EXE_dependencies
I: Finding TCL / TK...
I: found TCL / TK version 8.5
I: testing for  Zlib...
I: ... Zlib available
I: Testing for  ability to set  icons, version resources...
I: ... resource update available
I: Testing for  Unicode  support...
I: ... Unicode  available
I: testing for  UPX...
I: ...UPX available
I: computing PYZ dependencies...

  

不能出现开头为E(Error)的信息,最好不要有W(Warning)的信息。如果出现找不到某dll,请把该dll文件放置到C:\Windows\system32下,一般能解决。

Linux用户还需要编译Runtime Executables,Windows用户不需要。主要是运行Make.py,会在PyInstaller\support\load\下生成run和run_d两个文件,详见PyInstaller\doc\Manual.html说明。

2、写一个Py程序

为了实验,写一个HelloWorld.py,假设保存在C:\HelloWorld.py

#!/usr/bin/env python
print  'Hello,World!'
words =  raw_input ( 'What do you want to say? ' )
print  'you said:' + words

  

3、创建spec文件

spec文件是用来告诉PyInstaller要编译的py文件和参数的。执行"Makespec.py+参数+Py代码路径"就可以,主要参数如下(详见PyInstaller\doc\Manual.html):

- F, - - onefile Py代码只有一个文件
 
- D, - - onedir Py代码放在一个目录中(默认是这个)
 
- K, - - tk 包含TCL / TK
 
- d, - - debug 生成debug模式的exe文件
 
- w, - - windowed, - - noconsole 窗体exe文件(Windows Only)
 
- c, - - nowindowed, - - console 控制台exe文件(Windows Only)
 
- X, - - upx 使用upx压缩exe文件
 
- o DIR , - - out = DIR  设置spec文件输出的目录,默认在PyInstaller同目录
 
- - icon = < FILE .ICO> 加入图标(Windows Only)
 
- v FILE , - - version = FILE  加入版本信息文件

  

对于HelloWorld.py,具体执行以下代码:

Makespec.py - - onefile - - console - - upx - - tk - o C:\ C:\HelloWorld.py

  

执行后C:\就出现HelloWorld.spec

4、Build spec文件,生成exe文件

执行:

Build.py C:\HelloWorld.spec

  

一长串信息之后,你会在C:\下发现HelloWorld.exe这个文件,就是它啦!体积还真不小,2.7M,这是因为这个HelloWorld程序杀鸡用牛刀罢了。此外其它的文件均是过程文件,可删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值