我正在尝试将特定包的C标志添加到CMAKE_C_FLAGS。但我不知道如何使用cmake找到包的C标志。有人知道吗
答案 0 :(得分:2)
没有通用的方法(跨平台)来获取某个软件包的正确cflags,对于Windows,例如,由于没有默认位置,即使软件包已安装,也无法检查。在unix系统中,您可以通过运行
找到某个包的cflagspkg-config --cflags packagename
Cmake通常有特定的脚本来查找包并为它们构建正确的编译标志,如果它可用且包没有特定的脚本(例如,如果Cmake未知),则会回退到pkg-config
。参见
http://www.cmake.org/Wiki/CMake:How_To_Find_Libraries
了解详情。
在您的情况下,您可能需要为libxml2包提供临时配方。其他用户编写并共享,您可以通过搜索谷歌找到很多" libxml2 cmake"。实际上,libxml2是我在之前链接的同一页面上使用的例子#34;如何编写cmake未知的库的自定义配方"