public_notes/content/201806051543 minimal pythonのクロスビルド.md

50 lines
1.1 KiB
Markdown
Raw Normal View History

2024-02-14 23:30:02 +09:00
# 201806051543 minimal pythonのクロスビルド
#python #programming #embedded #linux
cross compileの方法
config.siteっていうファイルをつくる
中身
ac_cv_file__dev_ptmx=no
ac_cv_file__dev_ptc=no
```sh
CFLAGS='-Os' CONFIG_SITE=config.site ./configure --build=x86_64-linux-gnu --host=arm-unknown-linux-gnueabihf --disable-ipv6 prefix=`pwd`/build
```
とかやると小さめのができるが、stripはしてくれていないみたい。
んでmake; make install
176MiBとかある
pyc, `__pycache__`を削除
62MB
encodingsがないと困ってしまうみたい。ここサイズでかいな。
などなど、必要なmoduleだけにしていったところ、
```shell
$ du -h .
1.8M ./bin
40K ./lib/python3.6/encodings
288K ./lib/python3.6
292K ./lib
2.1M .
```
こんくらいまでは減らせた。
そこから import socketができるようにした段階
```shell
1.8M ./bin
40K ./lib/python3.6/encodings
368K ./lib/python3.6/lib-dynload
56K ./lib/python3.6/collections
908K ./lib/python3.6
912K ./lib
2.7M .
```