1、环境准备
安装docker,安装ubuntu镜像
安装 gcc g++ aarch64 arm cmake pkg-config(注意不要安装多版本,默认版本就行)
安装python3 和pip
pip install meson
pip install ninja
apt install git
apt install flex 根据提示按照
apt install bison 根据提示安装
meson amd64/release --prefix=/opt/gstreamer/amd64/release 编译release版本用于发布
meson amd64/debug --prefix=/opt/gstreamer/prefix/gstream/amd64/debug --buildtype debug 编译Debug版本用于开发调试
meson arm64-build --cross-file arm64.txt 交叉编译参见
[binaries]
c = '/usr/bin/aarch64-linux-gnu-gcc'
cpp = '/usr/bin/aarch64-linux-gnu-g++'
ar = '/usr/bin/aarch64-linux-gnu-ar'
strip = '/usr/bin/aarch64-linux-gnu-strip'
#pkgconfig = '/usr/bin/x86_64-pc-linux-gnu-pkg-config'
cmake = '/usr/bin/cmake'
ld = '/usr/bin/aarch64-linux-gnu-ld.gold'
#pcap-config = ''
#注意host_machine 指的编译后的程序运行的主机
[host_machine]
system = 'linux'
cpu_family = 'aarch64'
cpu = 'arm64'
endian = 'little'
#可写可不写,关于host_machine 后台target_machine 建议查看 meson 官方文档介绍
#[target_machine]
#system = 'linux'
#cpu_family = 'aarch64'
#cpu = 'armv8a'
#endian = 'little'
cd build_x64
ninja
ninja install
注意:如果是交叉编译,需要将/usr/include 中的zlib.h删除掉。否则交叉编译会报错,在链接过程中会链接到编译主机的libz.so上。