Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用cmake查找包(例如LibXml2)的C标志_C_Cmake - Fatal编程技术网

如何使用cmake查找包(例如LibXml2)的C标志

如何使用cmake查找包(例如LibXml2)的C标志,c,cmake,C,Cmake,我正在尝试将特定包的C标志添加到CMAKE_C_标志。但是我不知道如何使用cmake找到包的C标志。是否有人知道如何没有通用方法(跨平台)为某个软件包获取正确的CFLAG,例如windows,由于没有默认位置,即使软件包已安装,您也无法进行检查。在unix系统中,您可以通过运行 pkg-config --cflags packagename Cmake通常有特定的脚本来查找包并为其构建正确的编译标志,如果可用且包没有特定的脚本(例如,如果Cmake不知道它),则返回到pkg config。看

我正在尝试将特定包的C标志添加到CMAKE_C_标志。但是我不知道如何使用cmake找到包的C标志。是否有人知道如何

没有通用方法(跨平台)为某个软件包获取正确的CFLAG,例如windows,由于没有默认位置,即使软件包已安装,您也无法进行检查。在unix系统中,您可以通过运行

pkg-config --cflags packagename
Cmake通常有特定的脚本来查找包并为其构建正确的编译标志,如果可用且包没有特定的脚本(例如,如果Cmake不知道它),则返回到
pkg config
。看

详情请参阅

在您的情况下,可能需要为libxml2包提供一个特别的配方。其他用户编写并分享了它们,通过在谷歌搜索“libxml2cmake”,你可以找到很多。事实上,libxml2是我之前链接的同一页上的一个例子,“如何为cmake未知的库编写自定义配方”