Я пытаюсь следовать этому руководству , чтобы превратить простой скрипт Hello World в файл .exe.
У меня Windows Vista с 64-битным процессором AMD
Я установил Python 2.6.5 (версия для Windows AMD64)
Я установил PATH (если это правильное слово), чтобы командная строка распознавала Python
Я установил UPX (кажется, что это только 32-разрядная версия для Windows) и вставил копию файла upx.exe в папку Python26 в соответствии с инструкциями.
Я установил Pywin (версия для Windows AMD 64 Python 2.6)
Я запустил Pyinstaller в Configure.py. Это дает некоторые сообщения об ошибках, но, кажется, завершить. Я не знаю, является ли это причиной проблемы, поэтому при запуске я говорю следующее:
C: \ Python26 \ Pyinstaller \ ветви \ py26win> Configure.py
Я: прочитал старую конфигурацию из C: \ Python26 \ Pyinstaller \ branch \ py26win \ config.dat
I: вычисление EXE_dependencies
Я: В поисках TCL / TK ...
I: Анализ C: \ Python26 \ DLLs_tkinter.pyd
W: Невозможно получить бинарные зависимости для файла:
W: C: \ Python26 \ DLLs_tkinter.pyd
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
вернуть _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = датадирс [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Python26 \ DLLs_ctypes.pyd
W: Невозможно получить бинарные зависимости для файла:
W: C: \ Python26 \ DLLs_ctypes.pyd
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = datadirs [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Python26 \ DLLs \ select.pyd
W: Невозможно получить двоичные зависимости для файла:
W: C: \ Python26 \ DLLs \ select.pyd
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = datadirs [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Python26 \ DLLs \ unicodedata.pyd
W: Невозможно получить двоичные зависимости для файла:
W: C: \ Python26 \ DLLs \ unicodedata.pyd
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = датадирс [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Python26 \ DLLs \ bz2.pyd
W: Невозможно получить двоичные зависимости для файла:
W: C: \ Python26 \ DLLs \ bz2.pyd
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = датадирс [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Python26 \ python.exe
I: Зависимые сборки C: \ Python26 \ python.exe:
I: amd64_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_none
I: Поиск сборки amd64_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_
ни ...
I: Обнаружен манифест C: \ Windows \ WinSxS \ Manifests \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_750b37ff97f4f68b.manifest
I: Поиск файла msvcr90.dll
I: Найден файл C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21
022.8_none_750b37ff97f4f68b \ msvcr90.dll
I: Поиск файла msvcp90.dll
I: Найден файл C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21
022.8_none_750b37ff97f4f68b \ msvcp90.dll
I: Поиск файла msvcm90.dll
I: Найден файл C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21
022.8_none_750b37ff97f4f68b \ msvcm90.dll
I: Добавление Microsoft.VC90.CRT \ Microsoft.VC90.CRT.manifest
I: Добавление Microsoft.VC90.CRT \ msvcr90.dll
I: Добавление Microsoft.VC90.CRT \ msvcp90.dll
I: Добавление Microsoft.VC90.CRT \ msvcm90.dll
W: Невозможно получить двоичные зависимости для файла:
W: C: \ Python26 \ python.exe
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = datadirs [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Windows \ WinSxS \ Manifests \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e
3b_9.0.21022.8_none_750b37ff97f4f68b.manifest
I: Анализ C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.210
22.8_none_750b37ff97f4f68b \ msvcr90.dll
W: Невозможно получить двоичные зависимости для файла:
W: C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_
750b37ff97f4f68b \ msvcr90.dll
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = datadirs [1]
IndexError: индекс списка вне диапазона
I: Анализ C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.210
22.8_none_750b37ff97f4f68b \ msvcp90.dll
W: Невозможно получить бинарные зависимости для файла:
W: C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_
750b37ff97f4f68b \ msvcp90.dll
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = датадирс [1]
IndexError: список индексов вне диапазона
I: Анализ C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.210
22.8_none_750b37ff97f4f68b \ msvcm90.dll
W: Невозможно получить двоичные зависимости для файла:
W: C: \ Windows \ WinSxS \ amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_
750b37ff97f4f68b \ msvcm90.dll
W: обратная связь (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 608, в get
Импорт
return _getImports_pe (pth)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ bindepend.py", строка 275, в _ge
tImports_pe
importva, importz = datadirs [1]
IndexError: индекс списка вне диапазона
Я: не могу найти TCL / TK
Я: тестирование на Zlib ...
Я: ... Злиб в наличии
I: Тестирование на способность устанавливать иконки, ресурсы версий ...
Я: ... доступно обновление ресурса
I: Тестирование на поддержку Unicode ...
Я: ... Юникод доступен
Я: тестирование на UPX ...
Я: ... UPX доступен
I: вычисление PYZ-зависимостей ...
Я: завершил генерацию C: \ Python26 \ Pyinstaller \ branch \ py26win \ config.dat
Мой скрипт на Python (с именем Hello.py) такой же, как в примере:
#!/usr/bin/env python
for i in xrange(10000):
print "Hello, World!"
Это мой BAT-файл в том же каталоге:
set PIP = C: \ Python26 \ Pyinstaller \ branch \ py26win \
python% PIP% Makespec.py --onefile --console --upx --tk Hello.py
python% PIP% Build.py Hello.spec
Когда я запускаю Hello.bat в командной строке, создается несколько файлов, ни один из которых не является файлом .exe, и отображается следующее:
C: \ Мои файлы> set PIP = C: \ Python26 \ Pyinstaller \ branch \ py26win \
C: \ Мои файлы> python C: \ Python26 \ Pyinstaller \ branch \ py26win \ Makespec.py --onefil
e --console --upx --tk Hello.py
написал C: \ Мои файлы \ Hello.spec
теперь запустите Build.py, чтобы собрать исполняемый файл
C: \ Мои файлы> python C: \ Python26 \ Pyinstaller \ branch \ py26win \ Build.py Hello.spec
I: Зависимые сборки C: \ Python26 \ python.exe:
I: amd64_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_none
Traceback (последний вызов был последним):
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ Build.py", строка 1359, в
main (args [0], configfilename = opts.configfile)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ Build.py", строка 1337, в основном
строить (файл спецификация)
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ Build.py", строка 1297, в сборке
ExecFile (спецификация)
Файл "Hello.spec", строка 3, в
pathex = ['C: \ My Files'])
Файл "C: \ Python26 \ Pyinstaller \ branch \ py26win \ Build.py", строка 292, в __init_
_
поднять ValueError, "скрипт '% s' не найден"% script
ValueError: скрипт 'C: \ Python26 \ Pyinstaller \ branch \ py26win \ support \ useTK.py' n
не найдено
У меня ограниченные знания в командной строке, поэтому, пожалуйста, сделайте со мной шаги, если мне нужно что-то там сделать.