在arm上搭建flask執行環境

2021-07-05 05:12:46 字數 1484 閱讀 3683

flask是乙個簡單的實用的web服務,由於其比較小巧,對於一些簡單需求的服務是比較方便的,如restful api。

由於flask是乙個在python上執行的庫,所以想要執行flask,那麼乙個python庫是必不可少的,那麼就需要交叉編譯乙個python庫,可以參考 交叉編譯python 2.7.3 for arm。

然後將flask的庫拷到python的lib/python2.7.3/site-package目錄下,就可以了,由於flask還需要依賴幾個庫,要將這些庫都拷貝到lib/python2.7.3/site-package目錄下。

他們有click, flask, itsdangerous, jinjia2, markupsafe, werkzeug

都在mitsuhiko專案中。

然後將這些檔案copy到arm的linux上,執行flask程式會缺少zlib和ssl。python對於第三方的庫,如果需要交叉編譯,需要先將第三方的庫進行交叉編譯,可以參考交叉編譯zlib和openssl for arm,將這兩個庫進行交叉編譯,然後記住這兩個庫install的位置。

這時需要重新編譯python庫。

具體過程還是如交叉編譯python 2.7.3 for arm, 只不過在兩部分的中間,需要修改python-2.7.3/modules/setup.dist.

ssl=/usr/local/ssl

_ssl _ssl.c \

-duse_ssl -i

$(ssl)/include -i

$(ssl)/include/openssl \

-l$(ssl)/lib -lssl -lcrypto

zlib zlibmodule.c -i

$(prefix)/include -l

$(exec_prefix)/lib -lz

將這兩個部分去掉注釋,如果ssl和zlib安裝的位置和交叉編譯zlib和openssl for arm一樣,那麼是不需要做其他修改的,應該就可以將這兩個庫編譯進去了。如果修改了的話,那麼在上面兩端**中,也需要做相應的修改,剛python找到相應的庫。

這樣得到的python庫大小在55m左右,如果需要對python庫進行縮減,下面提供乙個比較簡潔的辦法,但是這個得到的python庫只會支援特定的程式。

基本的編譯方法還是和交叉編譯python 2.7.3 for arm一樣,在這裡第一步和第二步中間修改python-2.7.3/modules/setup.dist檔案的時候,就需要做比較多的修改,具體檔案setup.dist

然後依然會得到55m左右的python庫,接下來就需要刪除一些不需要的檔案,share目錄可以刪掉,lib下只需保留python2.7.3即可,在python2.7.3中,lib-dynload下的.so檔案都可以刪除,config檔案下的libpython2.7.a 可以刪除,最後將所要執行的程式完全測試一遍,刪除lib下的所以.py檔案即可,這樣會使python大小變的很小,並且可以滿足當前程式的需求。

在Ubuntu平台下 搭建Mason執行環境

我們平常mason的開發環境都是部署在ubuntu平台上的,因為通過新立得安裝某些必要的軟體時非常方便。以下是部署的經驗總結 需要通過新立得安裝的模組包括 apache2 mod perl2 libapache2 mod perl2 dbi libdbi perl,即dbi模組,可通過cpan安裝 ...

在Ubuntu平台下 搭建Mason執行環境

我們平常mason的開發環境都是部署在ubuntu平台上的,因為通過新立得安裝某些必要的軟體時非常方便。以下是部署的經驗總結 需要通過新立得安裝的模組包括 apache2 mod perl2 libapache2 mod perl2 dbi libdbi perl,即dbi模組,可通過cpan安裝 ...

在Ubuntu平台下 搭建Mason執行環境

我們平常mason的開發環境都是部署在ubuntu平台上的,因為通過新立得安裝某些必要的軟體時非常方便。以下是部署的經驗總結 需要通過新立得安裝的模組包括 apache2 mod perl2 libapache2 mod perl2 dbi libdbi perl,即dbi模組,可通過cpan安裝 ...