Я пытаюсь упаковать свою программу Python с помощью PyInstaller. Когда я это делаю, я получаю эту ошибку:
Traceback (most recent call last):
File "c:\python27\lib\runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "c:\python27\lib\runpy.py", line 72, in _run_code
exec code in run_globals
File "C:\Python27\Scripts\pyinstaller.exe\__main__.py", line 7, in <module>
File "c:\python27\lib\site-packages\PyInstaller\__main__.py", line 114, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:\python27\lib\site-packages\PyInstaller\__main__.py", line 65, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:\python27\lib\site-packages\PyInstaller\building\build_main.py", line 734, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "c:\python27\lib\site-packages\PyInstaller\building\build_main.py", line 636, in build
os.makedirs(pth)
File "c:\python27\lib\os.py", line 157, in makedirs
mkdir(name, mode)
WindowsError: [Error 5] Access is denied: 'C:\\Windows\\dist'
Когда я запускал его раньше, папка dist была помещена в текущий рабочий каталог (не в C: \ Windows) без проблем . Я не знаю, что изменилось, чтобы заставить его попытаться поместить его в C: \ Windows.
Вот мой файл spe c:
# -*- mode: python ; coding: utf-8 -*-
block_cipher = None
datas = [("assets", "assets")]
a = Analysis(['foo_bar.py'],
pathex=['Z:\\path\\to\\the\\script'],
binaries=[],
datas=datas,
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
[],
name='foo_bar',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True )
Это команда, которую я использую для сборки: pyinstaller --onefile --noconfirm foo_bar.spec