C++ 无法在VS2017上将libclang与cmake链接
不久前,我编写了一个代码生成程序,用于我的3D游戏引擎。我在cmake文件中添加了一个目标,并将libclang与之链接,因为我正在使用它来解析代码,所有这些都很好地工作。最近,我在我的项目中添加了另一个依赖项,它又依赖于SDL2。经过一番努力,我终于成功地实现了这一点,但突然间,代码生成项目将不再编译,尽管我已经几个月没有接触过它了。它无法链接,并开始给出有关未定义符号的错误,即使我明确指定了要链接的.lib文件并为其提供了正确的路径。我的项目的Cmake文件是 我在windows、generator VS2017(x64)、平台工具集LLVM上使用Cmake GUI 非常感谢您对这个问题的任何见解 更新:我得到的确切错误只是C++ 无法在VS2017上将libclang与cmake链接,c++,cmake,linker,llvm,libclang,C++,Cmake,Linker,Llvm,Libclang,不久前,我编写了一个代码生成程序,用于我的3D游戏引擎。我在cmake文件中添加了一个目标,并将libclang与之链接,因为我正在使用它来解析代码,所有这些都很好地工作。最近,我在我的项目中添加了另一个依赖项,它又依赖于SDL2。经过一番努力,我终于成功地实现了这一点,但突然间,代码生成项目将不再编译,尽管我已经几个月没有接触过它了。它无法链接,并开始给出有关未定义符号的错误,即使我明确指定了要链接的.lib文件并为其提供了正确的路径。我的项目的Cmake文件是 我在windows、gener
1>C:\Program Files (x86)\LLVM\bin\lld-link.exe : error : undefined symbol: __imp_clang_getTranslationUnitCursor
1>>>> referenced by C:\Users\michi_000\Desktop\C++\SaturnEngine\CodeGen\Serialization\main.cpp:128
1>>>> SerializationCodeGen.dir\Editor\main.obj:(?get_cursor@TranslationUnit@@QEAA?AUCXCursor@@XZ)
对于我调用的每个libclang函数。问题已经解决。问题是我的clang安装没有为clang提供导入库,而是链接了一个静态库。标头需要导入库,这导致导入库失败。我从dll生成了导入库,现在可以正常工作。请编辑您的问题帖子,以包含您看到的特定错误。