cx_Freeze 和 Python 的各种 build_exe_options 是什么?
What are the various build_exe_options for cx_Freeze and Python?
我完成了第一个完整的 python 程序,正在尝试创建一个 exe。我确实成功构建了 exe,但它运行但什么也不做。我猜它没有包括所有的包裹。我可以用 build_exe_options 在 cx_Freeze 中指定这些,但我不知道 packages 和 排除.
这些是我在程序中使用的所有导入
import os
import smtplib
from datetime import datetime, timedelta
from ftplib import FTP_TLS
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
下面是我当前的设置文件
from cx_Freeze import setup, Executable
setup(
name = "FTPConnect",
version = "1.0",
description = "Connects to FTP to download docs",
executables = [Executable("main.py")]
)
我猜我可以做这样的事情,对吗?
from cx_Freeze import setup, Executable
# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {"packages": ["os", "smtplib", "datetime", "ftplib", "email.mime.text", "email.mime.multipart" ], "excludes": []}
setup(
name = "FTPConnect",
version = "1.0",
description = "Connects to FTP to download docs",
options = {"build_exe": build_exe_options},
executables = [Executable("main.py")]
)
那么,'packages'
将 包含 一个包及其所有子模块,而 'exclude'
将 排除 列出的模块。
在此处详细了解所有可能的值:http://cx-freeze.readthedocs.io/en/latest/distutils.html#build-exe。这是一个命令行选项列表,但也适用于您的脚本。
还有许多其他选项允许包含和排除压缩模块、DLL 二进制文件等。
希望对您有所帮助!
我完成了第一个完整的 python 程序,正在尝试创建一个 exe。我确实成功构建了 exe,但它运行但什么也不做。我猜它没有包括所有的包裹。我可以用 build_exe_options 在 cx_Freeze 中指定这些,但我不知道 packages 和 排除.
这些是我在程序中使用的所有导入
import os
import smtplib
from datetime import datetime, timedelta
from ftplib import FTP_TLS
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
下面是我当前的设置文件
from cx_Freeze import setup, Executable
setup(
name = "FTPConnect",
version = "1.0",
description = "Connects to FTP to download docs",
executables = [Executable("main.py")]
)
我猜我可以做这样的事情,对吗?
from cx_Freeze import setup, Executable
# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {"packages": ["os", "smtplib", "datetime", "ftplib", "email.mime.text", "email.mime.multipart" ], "excludes": []}
setup(
name = "FTPConnect",
version = "1.0",
description = "Connects to FTP to download docs",
options = {"build_exe": build_exe_options},
executables = [Executable("main.py")]
)
那么,'packages'
将 包含 一个包及其所有子模块,而 'exclude'
将 排除 列出的模块。
在此处详细了解所有可能的值:http://cx-freeze.readthedocs.io/en/latest/distutils.html#build-exe。这是一个命令行选项列表,但也适用于您的脚本。
还有许多其他选项允许包含和排除压缩模块、DLL 二进制文件等。
希望对您有所帮助!