当前位置: 代码迷 >> 综合 >> deepstream5.0 deepstream-test1四类别pipeline检测器-makefile转为Qt Creator工程编译(二)
  详细解决方案

deepstream5.0 deepstream-test1四类别pipeline检测器-makefile转为Qt Creator工程编译(二)

热度:69   发布时间:2024-01-28 07:37:40.0

为什么要转qt工程配置:方便调试,工程集成。

1、qmake生成qt工程

参考文章:makefile与.pro转换。

qmake -project

工程目录下生成deepstream-test1.pro文件,打开:

TEMPLATE = app
TARGET = deepstream-test1
INCLUDEPATH += .DEFINES += QT_DEPRECATED_WARNINGSSOURCES += deepstream_test1_app.c

默认为我们添加当前目录进include,添加当前工程源文件。直接运行不行,因为没有加引用库。

2、makefile解读转.pro配置

qt中.pro文件详细说明参考文章:qt中.pro文件详细说明;

makefile打印变量值参考文章:makefile打印变量值进行调试;

pkg-config功能即使用方法参考文章:linux下pkg-config功能及使用;

qt中使用pkg-config简化配置参考文章:qt中在.pro配置文件中使用pkg-config。

APP:= deepstream-test1-app # 生成的app名字,将工程TARGET改为此名,保持一致

工程头文件:

PKGS:= gstreamer-1.0
INCS:= $(wildcard *.h)  # 匹配当前工程头文件
CFLAGS+= -I../../../includes # 上上级目录includes文件
CFLAGS+= `pkg-config --cflags $(PKGS)` # gstreamer-1.0头文件

工程源文件:

SRCS:= $(wildcard *.c) # 匹配当前工程.c文件

LIB库文件:

PKGS:= gstreamer-1.0
NVDS_VERSION:=5.0
LIB_INSTALL_DIR?=/opt/nvidia/deepstream/deepstream-$(NVDS_VERSION)/lib/LIBS:= `pkg-config --libs $(PKGS)`
LIBS+= -L$(LIB_INSTALL_DIR) -lnvdsgst_meta -lnvds_meta \-Wl,-rpath,$(LIB_INSTALL_DIR)

根据makefile语法,找出所有依赖,进行.pro配置。

TEMPLATE = app
TARGET = deepstream-test1-app
INCLUDEPATH += . \../../../includes \/usr/include/gstreamer-1.0 \/usr/include/glib-2.0 \/usr/lib/x86_64-linux-gnu/glib-2.0/includeDEFINES += QT_DEPRECATED_WARNINGS# Input
SOURCES += deepstream_test1_app.cLIBS += /opt/nvidia/deepstream/deepstream-5.0/lib/libnvdsgst_meta.so \/opt/nvidia/deepstream/deepstream-5.0/lib/libnvds_meta.so \/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so \/usr/lib/x86_64-linux-gnu/libgobject-2.0.so \/usr/lib/x86_64-linux-gnu/libglib-2.0.so

编译,运行通过。

3、使用pkgconfig简化gstreamer-1.0 lib库引用

LIBS += /opt/nvidia/deepstream/deepstream-5.0/lib/libnvdsgst_meta.so \/opt/nvidia/deepstream/deepstream-5.0/lib/libnvds_meta.so \/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so \/usr/lib/x86_64-linux-gnu/libgobject-2.0.so \/usr/lib/x86_64-linux-gnu/libglib-2.0.so

等效于:

LIBS += /opt/nvidia/deepstream/deepstream-5.0/lib/libnvdsgst_meta.so \/opt/nvidia/deepstream/deepstream-5.0/lib/libnvds_meta.so
CONFIG += link_pkgconfig
PKGCONFIG += gstreamer-1.0

4、编译运行

点击运行,生成deepstream-test1-app。同样,拷贝sample_720p.h264到编译目录,运行:

./deepstream-test1-app sample_720p.h264

 

  相关解决方案