我用pyside2开发windows桌面应用程序,为了保护源代码,我需要将这几十个py文件编译成pyd文件。一开始我是用
Nuitka
来编译项目的。然而,除非付费版本,否则它对 Qt 的支持不够好。后来我开始用Cython
编译python文件,并且成功了。
但是,出现了一个新的问题,当Windows系统启动后第一次启动应用程序时,即使进程已经立即启动,应用程序也会需要很长时间才能显示出来。我猜这是由于应用程序依赖的dll文件太多而消耗了时间,因为后者启动应用程序要容易得多。系统必须为启动的程序缓存一些东西。
那么,如果我减少 pyd 文件,系统将花费更少的时间来加载应用程序所需的依赖项。但我不知道如何将多个或多个 py 文件编译为一个 pyd 文件。怎么办?
尝试仅通过将所有 py 文件作为参数传递并点击运行来使用 Cython。代码示例如下:
from distutils.core import setup
from Cython.Build import cythonize
setup(ext_modules=cythonize(["file1.py", "file2.py", "file3.py"]),)
在终端中运行此命令 python setup.py build_ext --inplace