当前位置: 首页 > news >正文

GStreamer (四)交叉编译

在这里插入图片描述

交叉编译

  • 下载链接库
  • 交叉编译
    • 1、下载Gstreamer (方式二 ),进入到编译目录
    • 2、在gst-build目录下创建交叉编译配置文件cross_file.txt
    • 3、修改meson_options.txt中libmount选项为false,否则编译前需要先编译libmount。
    • 4、在gst-build目录执行meson 命令:
    • 5、编译
    • 6、将编译好的gstreamer安装到指定的pefix目录。
  • 参考

下载链接库

编译Gstreamer需要依赖其他的链接库,比如:zlib,libffi,libxml,orc,x264,glib,gettext,openssl

链接库地址:http://sources.webos-ports.org/?login=from_csdn
Gstreamer官网:https://gstreamer.freedesktop.org/
Gstreamer下载地址:
方式一:https://gstreamer.freedesktop.org/src/?login=from_csdn

方式二:

git clone https://gitlab.freedesktop.org/gstreamer/gst-build.git -b 1.18

交叉编译

1、下载Gstreamer (方式二 ),进入到编译目录

cd gst-build

2、在gst-build目录下创建交叉编译配置文件cross_file.txt

pkg_config_libdir为交叉编译工具链pkgconfig路径

[properties]
pkg_config_libdir = ['/usr/local/complie_tool/fsl-linaro-toolchain/arm-fsl-linux-gnueabi/multi-libs/default/usr/lib/pkgconfig']
c_args = ['-std=gnu99', '-D_GNU_SOURCE'][binaries]
c = 'arm-none-linux-gnueabi-gcc'
cpp = 'arm-none-linux-gnueabi-g++'
ar = 'arm-none-linux-gnueabi-ar'
strip = 'arm-none-linux-gnueabi-strip'
pkgconfig = 'pkg-config'[host_machine]
system = 'linux'
cpu_family = 'arm'
cpu = 'ARMv9'
endian = 'little'[build_machine]
system = 'linux'
cpu_family = 'x86_64'
cpu = 'x86_64'
endian = 'little'

3、修改meson_options.txt中libmount选项为false,否则编译前需要先编译libmount。

路径:gst-build/subprojects/glib/meson_options.txt

option('libmount',type : 'boolean',value : false,description : 'build with libmount support')

4、在gst-build目录执行meson 命令:

meson --prefix=/home/zhy/code/rIoTboard/gstreamer --cross-file cross_file.txt  build/

运行成功后出现如下信息:
在这里插入图片描述

5、编译

ninja -C build

编译成功后会有如下信息
在这里插入图片描述

6、将编译好的gstreamer安装到指定的pefix目录。

meson install -C build

参考

https://blog.csdn.net/m0_61442303/article/details/147063979
https://blog.csdn.net/qq_38694388/article/details/121888235

http://www.xdnf.cn/news/572293.html

相关文章:

  • 华为eNSP无线AC/AP组网实战
  • 基于大模型的闭合性尺桡骨干骨折全方位诊疗研究报告
  • 现代计算机图形学Games101入门笔记(二十)
  • V少JS基础班之第五弹
  • ElasticSearch导读
  • 【网络安全】日志采集、监控任务守护进程详细教程(附实战案例)
  • 打卡31天
  • Python学习Day1:安装
  • 谷歌2025年I/O开发者大会热点总结
  • shell脚本总结3
  • 【LLMs篇】12:Qwen3 技术报告翻译
  • 人工智能路径:技术演进下的职业发展导航
  • 20个关于Java编程语言的常见问题
  • 从微积分到集合论(1630-1910)(历史简介)——第2章——牛顿(Newton)和莱布尼兹(Neibniz)以及莱布尼兹传统(H.J.M.Bos)
  • 2025年人工智能新应用与新技术全景解析
  • Qt+线段拖曳示例代码
  • 【UE5】环形菜单教程
  • 现代计算机图形学Games101入门笔记(十九)
  • 汽车电子电气架构诊断功能开发全流程解析
  • Linux nbd 网络块设备(2)-内核实现
  • fork 和 写时拷贝
  • NV009NV010美光闪存颗粒NV011NV012
  • 【Elasticsearch】字段别名
  • el-radio-group 与 el-dropdown 一起使用时的注意事项
  • Pytorch基础操作
  • cookie跨域共享踩的坑
  • sqli-labs第十八关——POST-UA注入
  • 使用MATLAB输出1000以内所有完美数
  • MoManipVLA-北京邮电-2025.3.17-移动操控-未完全开源
  • UML 时序图 使用案例