我正在尝试使用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

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐