一、编译环境:Ubuntu 16.04.7 LTS
二、下载与配置
a、下载交叉编译工具链:wget arm-rockchip830-linux-uclibcgnueabihf.tar.gz 解压后设置编译环境:export PATH=/opt/build-tool/rv1106/bin/:$PATH;export CC=/opt/build-tool/rv1106/bin/arm-rockchip830-linux-uclibcgnueabihf-gcc
b、下载micropython:git clone https://github.com/micropython/micropython.git 执行更新子模组cd /opt/mpy/micropython;git submodule update --init(执行过程可能会失败,则一直执行至更新成功)
c、下载libffi依赖库:wget ftp://sourceware.org/pub/libffi/libffi-3.0.13.tar.gz 并解压
分别存放如下三个目录
三、编译libffi依赖库:
cd /opt/libs/libffi-3.0.13/;./configure --host=arm-rockchip830-linux-uclibcgnueabihf;make
编译生成的依赖库cd /opt/libs/libffi-3.0.13/arm-rockchip830-linux-uclibcgnueabihf/.libs:
四、编译micropython
cd /opt/mpy/micropython
make -C mpy-cross
cd /opt/mpy/micropython/ports/unix
CFLAGS="-I/opt/libs/libffi-3.0.13/arm-rockchip830-linux-uclibcgnueabihf/include" LDFLAGS="-L/opt/libs/libffi-3.0.13/arm-rockchip830-linux-uclibcgnueabihf/.libs -lffi" CROSS_COMPILE=arm-rockchip830-linux-uclibcgnueabihf- make V=1
生成目录:cd /opt/mpy/micropython/ports/unix/build-standard
五、测试
- 将编译的micropython放到rv1106开发板/mnt目录,给予执行权限:chmod 777 micropython
- 将编译的依赖库放到rv1106开发板/mnt/1106_lib目录,执行export LD_LIBRARY_PATH=/mnt/1106_lib:$LD_LIBRARY_PATH
- cd /mnt目录执行/mnt/micropython查看micropython版本
- 交互模式执行help("modules")查看支持模块