C++ cmake找不到LibXml2
我试图用CGub构建C++项目,但它找不到我已经下载和安装的LIbxML2库(我相信)。这是在装有cmake 3.7.1的Windows 10计算机上 以下是cmake配置文件的相关部分:C++ cmake找不到LibXml2,c++,cmake,libxml2,C++,Cmake,Libxml2,我试图用CGub构建C++项目,但它找不到我已经下载和安装的LIbxML2库(我相信)。这是在装有cmake 3.7.1的Windows 10计算机上 以下是cmake配置文件的相关部分: find_package(LibXml2 REQUIRED) include_directories(${LIBXML2_INCLUDE_DIR}) set(LIBS ${LIBS} ${LIBXML2_LIBRARIES}) 以下是我的环境变量: LIBXML2_INCLUDE_DIR=C:\Progra
find_package(LibXml2 REQUIRED)
include_directories(${LIBXML2_INCLUDE_DIR})
set(LIBS ${LIBS} ${LIBXML2_LIBRARIES})
以下是我的环境变量:
LIBXML2_INCLUDE_DIR=C:\Program Files\libxml2\include
LIBXML2_LIBRARIES=C:\Program Files\libxml2\lib
下面是C:\Program Files\libxml2目录的内容:
/mnt/c/Program Files/libxml2$ tree .
.
├── bin
│ ├── libxml2.dll
│ ├── xmlcatalog.exe
│ └── xmllint.exe
├── include
│ └── libxml
│ ├── c14n.h
│ ├── catalog.h
│ ├── chvalid.h
│ ├── debugXML.h
│ ├── dict.h
│ ├── DOCBparser.h
│ ├── encoding.h
│ ├── entities.h
│ ├── globals.h
│ ├── hash.h
│ ├── HTMLparser.h
│ ├── HTMLtree.h
│ ├── list.h
│ ├── nanoftp.h
│ ├── nanohttp.h
│ ├── parser.h
│ ├── parserInternals.h
│ ├── pattern.h
│ ├── relaxng.h
│ ├── SAX2.h
│ ├── SAX.h
│ ├── schemasInternals.h
│ ├── schematron.h
│ ├── threads.h
│ ├── tree.h
│ ├── uri.h
│ ├── valid.h
│ ├── xinclude.h
│ ├── xlink.h
│ ├── xmlautomata.h
│ ├── xmlerror.h
│ ├── xmlexports.h
│ ├── xmlIO.h
│ ├── xmlmemory.h
│ ├── xmlmodule.h
│ ├── xmlreader.h
│ ├── xmlregexp.h
│ ├── xmlsave.h
│ ├── xmlschemas.h
│ ├── xmlschemastypes.h
│ ├── xmlstring.h
│ ├── xmlunicode.h
│ ├── xmlversion.h
│ ├── xmlwriter.h
│ ├── xpath.h
│ ├── xpathInternals.h
│ └── xpointer.h
├── lib
│ ├── libxml2_a_dll.lib
│ ├── libxml2_a.lib
│ └── libxml2.lib
└── readme.txt
我收到的cmake输出是:
C:/程序中的CMake错误
文件/CMake/share/CMake-3.7/Modules/findpackagehandlestandardardargs.CMake:138
(消息):找不到LibXml2(缺少LibXml2_库)
LIBXML2_INCLUDE_DIR)调用堆栈(最新调用优先):C:/Program
文件/CMake/share/CMake-3.7/Modules/findpackagehandlestandardardargs.CMake:378
(\u FPHSA\u失败\u消息)C:/Program
文件/CMake/share/CMake-3.7/Modules/FindLibXml2.CMake:58
(查找包、句柄、标准参数)
我已经为此绞尽脑汁一天左右了,有人能告诉我我做错了什么吗?当运行CMake时,在via-D中定义变量,并使用斜杠作为目录分隔符(和退格来转义目录名中的空格)
cmake .. -DLIBXML2_INCLUDE_DIR:PATH=C:/Program\ Files/libxml2/include -DLIBXML2_LIBRARIES:PATH=C:/Program\ Files/libxml2/lib
是的,成功了!非常感谢。我想这就是其他开发人员在Mac上的情况。