当前位置: 首页 > 工具软件 > GStreamer > 使用案例 >

编译 gstreamer 1.20.1

柴凌
2023-12-01

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上。

 类似资料: