linux gst qt,c – 致命错误:gst / gst.h:没有这样的文件或目录(使用CMake)

我正在尝试使用CMake使用gstreamer构建一个C应用程序.在我的CMakeLists.txt文件中,gstreamer包含在以下行中:

find_package(PkgConfig REQUIRED)

pkg_search_module(GST REQUIRED gstreamer-1.0>=1.4

gstreamer-sdp-1.0>=1.4

gstreamer-video-1.0>=1.4

gstreamer-app-1.0>=1.4)

我可以运行cmake而不会出现任何错误,但make会出现以下错误:

fatal error: gst/gst.h: No such file or directory

安装了Gstreamer,我检查了gst.h文件和/usr/include/gstreamer-1.0/gst/gst.h以及其他gstreamer头文件.

已设置以下环境变量:

export PKG_CONFIG_PATH=/opt/qt-5.9.1/lib/pkgconfig

export LD_LIBRARY_PATH=/opt/qt-5.9.1/lib

export GST_PLUGIN_PATH=/usr/include/gstreamer-1.0

我还检查了pkg-config的输出,在另一篇文章中提出了类似的问题:

$pkg-config --cflags gstreamer-1.0

-pthread -I/usr/include/gstreamer-1.0 -I/usr/lib/x86_64-linux-gnu/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/x86_64-linux-gnu/glib-2.0/include

那为什么不能找到gstreamer头文件呢?

(我是gstreamer和CMake的新手)

解决方法:

结果我实际上并没有将库链接到应用程序.将以下两行添加到CMakeLists.txt修复了错误(如果有其他人犯了与我相同的错误):

target_include_directories(videoDemo PRIVATE ${GST_INCLUDE_DIRS})

target_link_libraries(videoDemo ${GST_LIBRARIES})

(videoDemo是应用程序的名称)

标签:c,cmake,gstreamer

来源: https://codeday.me/bug/20190828/1749574.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "gst-launch-1.0 playbin uri=file:///path/to/file.swf" 这句命令是使用 GStreamer 命令行工具 "gst-launch-1.0" 来播放一个 SWF 文件。 "playbin" 是 GStreamer 的一个预定义的播放器元件,它可以自动处理所有必要的播放步骤,如解码、渲染和音频输出。 "uri=file:///path/to/file.swf" 设置了播放的文件的 URI,在这里,是本地文件 "file.swf" 的路径。 ### 回答2: gst-launch-1.0是GStreamer多媒体框架提供的命令行工具,用于构建和运行多媒体处理管道。playbin是一个内置的元素,用于处理音视频文件的播放。在上述命令中,我们使用playbin元素来播放一个文件的URI,URI指向一个.swf文件。 URI是统一资源标识符的缩写,用于唯一地标识一个资源。在这里,我们使用URI指向一个.swf文件。file:///表示文件协议,意味着文件位于本地计算机上。/path/to/file.swf是.swf文件的路径。因此,该命令的目的是使用playbin元素播放指定路径下的.swf文件GStreamer提供了灵活强大的多媒体处理功能,并支持各种音视频文件格式和协议。通过使用playbin元素,我们可以轻松地实现音视频文件的播放功能。此命令将自动处理文件的解码、播放和显示,并根据文件的内容和编码格式进行必要的配置。 要运行上述命令,我们需要在终端中输入"gst-launch-1.0 playbin uri=file:///path/to/file.swf"并且将"/path/to/file.swf"更改为.swf文件在本地计算机上的实际路径。然后按下回车键即可启动该命令。在成功运行后,GStreamer将根据指定URI播放相应的.swf文件。 总而言之,使用gst-launch-1.0 playbin uri=file:///path/to/file.swf命令可以轻松地实现在本地计算机上播放指定.swf文件的功能,通过GStreamer提供的多媒体处理功能,我们可以处理各种音视频格式和协议。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值