Linux+树莓派3开发总结——cx_Freeze打包Python3程序(工程文件)

本文介绍了如何在Linux环境下,利用cx_Freeze将Python3程序打包成可执行文件,包括下载源码、解决编译错误、安装和打包的详细步骤。过程中遇到了Python编译错误,通过修改setup.py文件成功解决。
摘要由CSDN通过智能技术生成

Python是一个脚本语言,被解释器解释执行。它的发布方式:

  • .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库。(Python官方的各种安装包就是这样做的)

  • .pyc文件:有些公司或个人因为机密或者各种原因,不愿意源码被运行者看到,可以使用pyc文件发布,pyc文件是Python解释器可以识别的二进制码,故发布后也是跨平台的,需要使用者安装相应版本的Python和依赖库。

  • 可执行文件:对于非码农用户或者一些小白用户,你让他装个Python同时还要折腾一堆依赖库,那简直是个灾难。对于此类用户,最简单的方式就是提供一个可执行文件,只需要把用法告诉Ta即可。比较麻烦的是需要针对不同平台需要打包不同的可执行文件(Windows,Linux,Mac,...)。

本文主要就是介绍最后一种方式,.py和.pyc都比较简单,Python本身就可以搞定。将Python脚本打包成可执行文件有多种方式,本文重点介绍cx_Freeze,其它仅作比较和参考。

Freezing Your Code

各种打包Python程序对比 点击打开链接

各种打包工具的对比如下(来自文章Freezing Your Code):

Solution Windows Linux OS X Python 3 License One-file mode Zipfile import Eggs pkg_resources support
bbFreeze
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
cx_freeze是一个Python库,可以将Python代码打包成可执行文件或库,以便在没有Python解释器的计算机上运行。下面是使用cx_freeze打包Python代码的步骤: 1. 安装cx_freeze库 使用pip安装cx_freeze库: ``` pip install cx_Freeze ``` 2. 创建setup.py文件Python代码所在的目录中创建一个名为setup.py的文件,并添加以下内容: ```python import sys from cx_Freeze import setup, Executable # 打包文件列表 files = ["<path_to_file1>", "<path_to_file2>", ...] # 设置可执行文件的信息 exe = Executable( script="<path_to_script>", base=None, # 如果是GUI程序,可以设置为"Win32GUI" icon="<path_to_icon_file>", # 可选 ) # 打包的配置 options = { "build_exe": { "packages": ["os"], # 需要打包Python包 "include_files": files, # 需要打包文件 }, } # 创建setup setup( name="<name_of_executable>", version="<version>", description="<description>", author="<author>", options=options, executables=[exe], ) ``` 其中,需要修改的部分有: - `<path_to_file1>, <path_to_file2>, ...`:需要打包文件路径列表。 - `<path_to_script>`:需要打包Python脚本路径。 - `<path_to_icon_file>`:可选,程序的图标文件路径。 - `<name_of_executable>`:可执行文件的名称。 - `<version>`:版本号。 - `<description>`:程序的描述。 - `<author>`:作者。 3. 执行打包命令 在终端中进入Python代码所在的目录,执行以下命令: ``` python setup.py build ``` 执行完毕后,将在dist目录中生成可执行文件或库。 注意:在打包过程中,可能会出现一些依赖库缺失的问题。需要根据提示安装缺失的库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值