我正在使用下面的安装文件来创建python应用程序的安装程序
from cx_Freeze import setup, Executable
buildOptions = dict(excludes = ["tkinter"], includes =["idna.idnadata"], optimize=1)
setup(name = "SoftwareGateway" ,
version = "0.1" ,
description = "" ,
options =dict(build_exe = buildOptions),
executables = [Executable("main.py", base = base)])
安装文件本身会获取依赖项,但是在我的情况下,这里是main.py
使用子进程调用来调用另一个python程序fun.py
。当我运行setup.py
时,fun.py
既不会被编译,也不会在安装后进入该目录。
有没有办法将fun.py
编译为字节码并将其与安装程序一起打包?
答案 0 :(得分:1)
尝试在import fun
中添加main.py
,并使用fun.__file__
在子流程调用中获得正确的编译乐趣位置(假设fun.py
在同一目录中)为main.py
)。这应该可以满足您的要求。
但是为什么不简单地将fun.py
的内容打包到一个函数中并调用该函数而不是子进程调用呢?