如何使用 GStreamer 编译 C/C++ 程序

dwi*_*nar 10 compiling gstreamer c++

我正在尝试编译此代码:

#include <stdio.h>
#include <stdlib.h>
#include <gst/gst.h>

int main (int   argc,
      char *argv[])
{
  const gchar *nano_str;
  guint major, minor, micro, nano;

  gst_init (&argc, &argv);

  gst_version (&major, &minor, &micro, &nano);

  if (nano == 1)
    nano_str = "(CVS)";
  else if (nano == 2)
    nano_str = "(Prerelease)";
  else
    nano_str = "";

  printf ("This program is linked against GStreamer %d.%d.%d %s\n",
          major, minor, micro, nano_str);

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我在终端中使用此命令时:

libtool --mode=link gcc `pkg-config --cflags --libs gstreamer-1.0` -o main main.c
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Package gstreamer-1.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gstreamer-1.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gstreamer-1.0' found
libtool: link: gcc -o main main.c
Run Code Online (Sandbox Code Playgroud)

而这个错误:

main.c:3:21: fatal error: gst/gst.h: No such file or directory
Run Code Online (Sandbox Code Playgroud)

但是我已经用apt-get安装了GStreamer 1.0和libtool。你有什么想法我应该从哪里开始?我挖了整个互联网搜索答案,但没有人有答案。

mur*_*uru 9

gst/gst.h由 提供libgstreamer1.0-dev。安装它:

sudo apt-get install libgstreamer1.0-dev
Run Code Online (Sandbox Code Playgroud)

在 Code::Blocks 中,您可以设置自定义包含位置和链接器标志。在“项目”菜单中,单击“构建选项”在此处输入图片说明