我是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 ~/llvm
或cmake ..
。在这种情况下,您根本不需要-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初学者来说,它都是一个值得检查的代码库。