【问题标题】:what is the significance of pkg-config in gcc?gcc中pkg-config的意义是什么?
【发布时间】:2013-12-23 09:28:03
【问题描述】:

在构建 dbus-example 时,我发现我们需要在 gcc 中添加一个 pkg-config。例如:

gcc `pkg-config --cflags --libs dbus-1` <file_name> -o <file_name.out>

pkg-config --cflags --libs dbus-1的意义是什么?这里的 pkg-config 是什么?什么是额外的 cflags? --libs这里是什么?

【问题讨论】:

  • 尝试执行命令pkg-config --cflags --libs dbus-1。也许这可以帮助你回答你的问题!

标签: c gcc pkg-config


【解决方案1】:
gcc `pkg-config --cflags --libs dbus-1` <file_name> -o <file_name.out>

将运行pkg-config 命令,并将其输出作为参数传递给 gcc。

pkg-config 的目的是使与库的链接更加容易,因为不同的操作系统和发行版需要不同的编译标志(又名 CFLAGS)、库包含路径和要链接到的库。 pkg-config 使用配置文件(由库定义)为编译器生成上述信息,让我们不必担心编译发生在什么操作系统或发行版上。

--cflags 表示pkg-config 应该为列出的包提供编译标志。 --libs 表示pkg-config 应该提供列出的包的链接信息。

dbus-1 是包的名称。

【讨论】:

    【解决方案2】:
    gcc `pkg-config --cflags --libs dbus-1` <file_name> -o <file_name.out>
    

    包括以下部分:

    1. 执行pkg-config --cflags --libs dbus-1 note ``在两者之间运行命令。
    2. 使用标志运行gcc 1. 返回和输入文件&lt;file_name&gt; 输出目标文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多