llvm cmake add_llvm_loadable_module unknown



我是llvm的初学者。我编译了从svn检查的llvm,当使用cmake在llvmroot/lib/Transform/Hello/build中创建makefile时,我得到了错误:unknown cmake command add_llvm_loadable_module。我不知道为什么会发生这种情况。编译llvm时有什么问题吗?在这种情况下,我用cmake -G "Unix Makefiles"在宏中编译了llvm。谢谢你的帮助。

你只是把事情搞混了。

您应该将cd转换为~/llvm/build并运行cmake ~/llvmcmake ..。在这种情况下,您根本不需要-DCMAKE_PREFIX_PATH

此命令只会为您生成生成文件。现在,如果您只想构建Hello pass而不是整个LLVM,请运行make help | grep Hello以了解如何调用相应的目标,然后运行make <target>

您应该在CMakeLists.txt 中使用add_llvm_library

像这样:

add_llvm_library(My_Plugin MODULE My_Plugin.cpp PLUGIN_TOOL clang)

添加这个作为答案(因为没有足够的信誉来评论(。类似的错误在我的一端被修复:

add_library(HelloWorld SHARED HelloWorld.Cpp)

该解决方案取自llvm导师存储库。对于任何llvm初学者来说,它都是一个值得检查的代码库。

最新更新