PyInstaller Winerror3: система не может найти указанный путь - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь создать исполняемый файл, используя pyinstaller, используя команду:

pyinstaller <script>.py

В Linux все работало идеально, но почему-то это не работает в Windows.

Python : 3.5

Pyinstaller : 3.4

Но он постоянно выдает ошибку, поскольку система не может найти указанный путь: C: \ folder \ build \ scriptname

В то время как папка сборки обычно создается после выполнения команды PyInstaller.

Traceback (most recent call last): File "C:\Program Files\Python 3.5\Scripts\pyinstaller-script.py", line 11, in <module> load_entry_point('PyInstaller==3.4', 'console_scripts', 'pyinstaller')() File "c:\program files\python 3.5\lib\site-packages\PyInstaller\__main__.py", line 111, in run run_build(pyi_config, spec_file, **vars(args)) File "c:\program files\python 3.5\lib\site-packages\PyInstaller\__main__.py", line 63, in run_build PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) File "c:\program files\python 3.5\lib\site-packages\PyInstaller\building\build_main.py", line 838, in main build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build')) File "c:\program files\python 3.5\lib\site-packages\PyInstaller\building\build_main.py", line 741, in build os.makedirs(pth) File "c:\program files\python 3.5\lib\os.py", line 241, in makedirs mkdir(name, mode) FileNotFoundError: [WinError 3] The system cannot find the path specified: 'C:\\cms\\build\\cmstest

РЕДАКТИРОВАТЬ: Да, скрипт работает, скрипт не имеет проблем на Win 10, Fedora 28 или с использованием IDLE.

РЕДАКТИРОВАТЬ: я получаю файл .spec и пустую папку dist

РЕДАКТИРОВАТЬ: Вот мой файл спецификации

block_cipher = None


a = Analysis(['cmsnewtest.py'],
         pathex=['C:\\cms'],
         binaries=[],
         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='cmsnewtest',
      debug=False,
      bootloader_ignore_signals=False,
      strip=False,
      upx=True,
      runtime_tmpdir=None,
      console=True ) `

1 Ответ

0 голосов
/ 25 сентября 2018

для окон, попробуйте следующее.Я покажу вам шаги с Python 3.7.Для python 3.5 это аналогично:

  1. Установить Python 3.7 на окнах: https://www.python.org/ftp/python/3.7.0/python-3.7.0-amd64.exe

  2. Установите следующие флажки в процессе установки: Python install process 01 Python install process 02 Важно установить переменную среды Python!без этого python не может корректно запускать такие пакеты, как pyinstaller!У меня была такая же проблема, как у вас.

  3. После установки запустите командную строку и выполните следующую команду: pip install pyinstaller

  4. Откройте командную строку cmdи перейдите к файлу .py и запустите pyinstaller, например:

    cd C: \ users \ admin \ desktop \ pythonscriptfolder \

    pyinstaller somepythonscript.py

...