dex*_*ous 16 c gcc pkg-config
在构建dbus示例时,我发现我们需要在gcc中添加pkg-config.例如:
gcc `pkg-config --cflags --libs dbus-1` <file_name> -o <file_name.out>
Run Code Online (Sandbox Code Playgroud)
有什么意义pkg-config --cflags --libs dbus-1?这是什么pkg-config?什么是额外的cflags?什么在--libs这里?
cyp*_*har 19
gcc `pkg-config --cflags --libs dbus-1` <file_name> -o <file_name.out>
Run Code Online (Sandbox Code Playgroud)
将运行该pkg-config命令,并将其输出作为参数传递给gcc.
目的pkg-config是使链接库更容易,因为不同的操作系统和发行版需要不同的编译标志(aka CFLAGS),库包含路径和链接到的库.pkg-config使用配置文件(由库定义)为编译器生成上述信息,并使我们不必担心编译发生在哪个操作系统或分发上.
--cflags表示pkg-config应该为列出的包提供编译标志.
--libs表示pkg-config应该为列出的包提供链接信息.
并且dbus-1是包的名称.