我正在使用python 3.5和pyinstaller 3.1.1版。我已经指定了一个名为SCADAsync_spec.spec的.spec文件,如下所示:
block_cipher = None
a = Analysis(['SCADAsync.py'],
pathex=['C:\\repo\\analysis\\trunk\\source\\python\\functions', 'C:\\repo\\analysis\\trunk\\source\\python\\Executables'],
binaries=None,
datas=[('figs\\ROMO_icon.ico','figs'),('figs\\OpenFile2.gif','figs'),('figs\\ROMOWind_Logo2015_CMYK.png','figs')],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='SCADAsync',
debug=True,
strip=False,
upx=True,
console=True
)
使用
执行时效果很好pyinstaller SCADAsync_spec.spec
现在创建了两个大文件夹(dist和build),我希望将其存储在默认目录以外的其他位置。有谁知道如何在spec文件中设置这些文件夹的位置?我希望保持命令行命令尽可能简单,即.exe应该只通过输入
来构建pyinstaller SCADAsync_spec.spec
从Pyinstaller手册中,我似乎可以指定名为' DISTPATH'和' workpath'到spec文件(https://pythonhosted.org/PyInstaller/spec-files.html)。但我无法弄清楚如何做到这一点。
非常感谢任何帮助!
尼克
答案 0 :(得分:4)
Pyinstaller spec / build / dist位置路径可以配置为pyinstaller命令的一部分。请参阅以下示例
pyinstaller --specpath /opt/bk/spec --distpath /opt/bk/dist --workpath /opt/bk/build testscript.py