当我尝试将程序包转换为加密的二进制文件时,会出现MaxRecursionError。
但是我将源代码打包为未经加密的二进制文件,结果是成功的。
这是我目录的内容:
directory/
run.py # as an entry to import package
setup.py # import setuptools and cython
my_pkg/
__init__.py
module1.py
module2.py
...
这是run.py的内容,它仅运行简单的操作。
import my_pkg
app = my_pkg.module1.Module1()
print(id(app))
为此,我首先使用setuptools
将.py文件转换为.so文件,然后输出是.egg文件
$ python setup.py bdist_egg
然后,我使用pyinstaller
将.egg文件和run.py打包为二进制文件
$ pyinstaller run.py --onefile
在此过程中,发生了RecursionError: maximum recursion depth exceeded in comparison...