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

2022-08-03,,,,

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

1、qmake生成qt工程

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

qmake -project

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

TEMPLATE = app
TARGET = deepstream-test1
INCLUDEPATH += .

DEFINES += QT_DEPRECATED_WARNINGS

SOURCES += 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/include

DEFINES += QT_DEPRECATED_WARNINGS

# Input
SOURCES += deepstream_test1_app.c

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

编译,运行通过。

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

传送门:deepstream系列文章分类整理

本文地址:https://blog.csdn.net/weixin_34910922/article/details/107347919

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

下载本文的Word格式文档,以方便收藏与打印。