2017-02-14 10 views
1

Мы создаем встроенную систему ARM 9, Linux и т. Д. Недавно клиент попросил нас предварительно установить Python 3 для них. Мы разработали кросс-компиляцию (QEMU действительно волшебный), но итоговая сборка - 177 Мб, так что это не выход. Какой лучший план здесь - мы можем оставить каталог Doc и, возможно, «build» dir? Я вижу, что каталог Lib - 54 МБ - это случай выбора того, какие библиотеки нужны клиенту? Мы очень мало знаем о Python. Чтобы быть ясным, я вижу много советов по упаковке приложений Python - это не то, что мы делаем, - мы упаковываем среду исполнения Python. Благодаря! (Каталог резюме размера ниже)Как свести к минимуму время выполнения Python 3.6 для встроенной системы?

1.6M ./Python-3.6.0/Mac 
760K ./Python-3.6.0/Include 
17M ./Python-3.6.0/build 
5.4M ./Python-3.6.0/Python 
8.0K ./Python-3.6.0/.github 
54M ./Python-3.6.0/Lib 
2.7M ./Python-3.6.0/PC 
2.7M ./Python-3.6.0/Tools 
6.9M ./Python-3.6.0/Objects 
11M ./Python-3.6.0/Doc 
824K ./Python-3.6.0/Parser 
20M ./Python-3.6.0/Modules 
15M ./Python-3.6.0/Programs 
620K ./Python-3.6.0/PCbuild 
12K ./Python-3.6.0/Grammar 
5.8M ./Python-3.6.0/Misc 
161M ./Python-3.6.0 
177M . 
+0

ответ Знакомства Алекс Мартелли на этот вопрос: http://stackoverflow.com/questions/2344712 ​​/ minim-python-distribution-size –

+0

Спасибо - я видел ответы вроде этого, но делает среду выполнения специфичной для конкретного приложения python, правильно? Это не то, что я хочу - я хотел бы узнать самый «общий» способ распространения Python в целом, а не для одного конкретного приложения. – Jeff

ответ

0

Возможный выбор, чтобы удовлетворить ваши требования может быть MicroPython, который является реализацией Питона 3, который состоит из небольшого подмножества стандартной библиотеки Python. По их сайте она предназначена для микро-контроллеров и ограниченных средах: https://micropython.org/

Согласно их описанию MicroPython стремится быть совместимым с нормальным Python как можно позволить передавать код с легкостью с рабочего стола на микроконтроллер или Встроенная система. Тем не менее, он достаточно компактен, чтобы соответствовать и работать всего лишь на 256 тыс. Кодовых пространств и 16 тыс. Оперативной памяти.

Существует онлайн проект, который ставит реализацию MicroPyton в основе Arm Cortex M4 embeeded системы могут также оказаться полезными: https://github.com/micropython/micropython/wiki