下载交叉编译工具
https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux- gnu/gcc-linaro-4.9.4-2017.01-x86_64_aarch64-linux-gnu.tar.xz
需要其他版本可以在 https://releases.linaro.org/components/toolchain/binaries 查找
解压安装到
/opt
目录
tar -C /opt/ -xf gcc-linaro-4.9.4-2017.01-x86_64_aarch64-linux-gnu.tar.xz
设置环境变量
1
2echo 'PATH="$PATH:/opt/gcc-linaro-4.9.4-2017.01-x86_64_aarch64-linux-gnu/bin/"' >> /etc/profile
source /etc/profile使用
使用交叉编译器:aarch64-linux-gnu-gcc -ohello hello.c
较编译得到的可执行文件拷贝到aarch64
机器运行即可其他可能有用的环境变量
1
2
3
4export CC=aarch64-linux-gnu-gcc
export CXX=aarch64-linux-gnu-g++
export PREFIX=/opt/gcc-linaro-4.9.4-2017.01-x86_64_aarch64-linux-gnu/aarch64-linux-gnu/libc/usr
export HOST=aarch64-linux-gnu
使用交叉编译工具编译libjson
库
先下载,然后解压
1
2wget https://github.com/open-source-parsers/jsoncpp/archive/refs/heads/master.zip
unzip master.zip生成
.so
1
2cd src/lib_json
aarch64-linux-gnu-g++ -std=c++11 -shared -fPIC *.cpp -I../../include -o libjsoncpp.so生成
.a
1
2aarch64-linux-gnu-g++ -fPIC -std=c++11 -c *.cpp -I../../include
aarch64-linux-gnu-ar -cr libjsoncpp.a *.o