2017-02-14 70 views
1

我們製作了ARM 9嵌入式系統,Linux等。最近有客戶問我們爲他們預裝了Python 3。我們制定了交叉編譯(QEMU真的很神奇),但最終的版本是177Mb,所以這是不行的。這裏最好的計劃是什麼 - 我們可以離開Doc目錄,也許是「build」目錄?我看到Lib目錄是54Mb - 這是選擇什麼libs客戶需要選擇的情況?我們對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​​/minimize-python-distribution-size –

+0

謝謝 - 我已經看到了類似的答案 - 但使運行時特定於特定的python應用程序,對吧?這不是我想要的 - 我想知道一般分發Python的最「普通」方式,而不是一個特定的應用程序。 – Jeff

回答

0

一種可能的選擇,以滿足您的要求可以是MicroPython是Python 3中的實施方案它由Python標準庫的一小部分的。根據他們的網站它是針對微控制器和約束環境: https://micropython.org/

據他們描述MicroPython的目標是與正常的Python儘可能兼容,讓您輕鬆從桌面轉移代碼,以微控制器或嵌入式系統。但它足夠緊湊,可以在256k的代碼空間和16k的RAM中運行和運行。

有一個在線的項目,把MicroPyton的實現在基於的ARM Cortex M4 embeeded系統還可以證明是有益的: https://github.com/micropython/micropython/wiki