BLOZI 10.1寸LCD价签折腾记2-F1C200S交叉编译环境搭建

搭建F1C200S交叉编译环境

开发环境

OS: Arch Linux x86_64

Host: 2347B46 (ThinkPad T430)

Kernel: Linux 6.15.6-arch1-1

CPU: Intel(R) Core(TM) i7-3632QM (8) @ 3.20 GHz

Platform: aarch64

目标环境

OS: TinaLinux 3.10.65(Based on OpneWRT 3.5.1)

CPU: F1C200S

Platform: ARM9

交叉编译链下载与配置

注意

全志的交叉编译链极其奇葩复杂,Linaro编译链并不适用,本编译链为从系统编译包提取的sunxi Arm9 MUSL编译链

进入本链接下载我提取打包好的编译链toolchain-sunxi-arm9-musl.tar.gz

1
2
tar -vxf toolchain-sunxi-arm9-musl.tar.gz
sudo cp -r toolchain-sunxi-arm9-musl /usr/local/share/

接下来配置.bashrc(视终端而定,我这里因为使用的是zsh所以是.zshrc),以使系统支持编译链

1
nano ~/.zshrc

在最后一行添加

1
2
export PATH=$PATH:/usr/local/share/toolchain-sunxi-arm9-musl/toolchain/bin
export STAGING_DIR=$STAGING_DIR:/usr/local/share/toolchain-sunxi-arm9-musl/toolchain/bin

保存退出后更新环境变量即可

1
source .zshrc

此时输入在终端arm-openwrt-linux-,双击tab后可得提示

即代表交叉编译环境安装配置完毕

环境测试

创建一个测试程序test.cpp

1
2
3
4
5
#include <iostream>
int main(){
	std::cout<<"Hello World!"<<std::endl;
	return 0;
}

使用交叉编译器进行编译链接

1
arm-openwrt-linux-g++ -o test test.cpp

将编译好的test文件复制到F1C200S开发板上执行

1
2
3
4
5
adb push test test
adb shell

> ./test
Hello World!

测试完毕

提示

若执行编译好的程序提示.so缺失,可以在/usr/local/share/toolchain-sunxi-arm9-musl/toolchain/lib中找到对应的文件并使用adb push复制到/lib

使用 Hugo 构建
主题 StackJimmy 设计,DoubleCat 修改
© Copyright Licensed under CC BY-NC-SA 4.0