Какой самый простой способ собрать Python26.zip для встроенного дистрибутива?
Я использую Python в качестве плагина скриптового языка для существующего приложения C++. Я могу встроить интерпретатор Python, как указано в документации по Python. Все успешно работает с инициализацией и деинициализацией переводчика. У меня, однако, возникают проблемы с загрузкой модулей, потому что я не смог заархивировать стандартную библиотеку в zip-файл (обычно PythonXX.zip, соответствующий номеру версии DLL-файла Python).
Какой самый простой способ сжать всю стандартную библиотеку после оптимизированной компиляции байт-кода? Я ищу простой сценарий или команду, чтобы сделать это для меня, поскольку я действительно не хочу делать это вручную.
Есть идеи?
Спасибо!
2 ответа
Не должно быть слишком сложно написать сценарий для этого. Проверьте zipfile.PyZipFile
класс и это writepy
метод.
Я бы, вероятно, использовал setuptools, чтобы создать яйцо (в основном java jar для python). Вероятно, файл setup.py будет выглядеть примерно так:
from setuptools import setup, find_packages
setup(
name='python26_stdlib',
package_dir = {'' : '/path/to/python/lib/directory'},
packages = find_packages(),
#any other metadata
)
Вы можете запустить это с помощью python setup.py bdist_egg
, Если у вас есть яйцо, вы можете добавить его в путь к Python или установить с помощью setuptools. Я считаю, что это также должно помочь вам с генерацией pycs.
ПРИМЕЧАНИЕ: я бы не использовал это в моей системной директории python. Вы могли бы хотеть настроить virtualenv для этого.