我有一个脚本,我正在尝试使用Python 2.7
使用PyInstaller(2.1)进行编译该脚本使用我编写的名为'auto_common'的自定义包
在脚本中我使用
导入它sys.path.append(path_to_package)
项目文件夹如下所示:
Automation/ Top level project
Proj1/
script1.py This is the script I want to compile
myspec.spec Spec file for the script
Packages/
auto_common/
__init__.py Init module of the package (empty)
... More modules here
在PyInstaller日志文件中,我收到以下警告:
W: no module named auto_common (top-level import by __main__)
如何创建一个包含包的钩子(例如使用sys.path.append)?
我尝试在spec文件中将包的路径添加到'pathex',但它不起作用。
答案 0 :(得分:6)
使用" -p"在编译时(或在构建spec文件时)将添加到python路径的其他路径。
pyinstaller -p any_path/Automation/Packages script1.py
这模仿了sys.path.append()的行为。
感谢PyInstaller的工作人员提供解决方案:
sys.path.append does not work when compiling with PyInstaller 2.1