llvm传递错误

时间:2012-03-07 10:54:56

标签: llvm clang bytecode frontend

我正在使用本指南:http://llvm.org/releases/3.0/docs/WritingAnLLVMPass.html用于创建llvm传递,但是当我使用

时出现以下错误
opt -load ../../../Debug+Asserts/lib/Hello.so -hello < hello.bc > /dev/null


Error opening '../../../Release/lib/Hello.so': ../../../Release/lib/Hello.so: undefined symbol: _ZN4llvm12PassRegistry12registerPassERKNS_8PassInfoEb
  -load request ignored.
opt: Unknown command line argument '-hello'.  Try: 'opt -help'

请注意,我没有“Debug + Asserts”文件夹,而是“Release”

有人知道这是什么问题吗?

也许是因为创建Hello.bc文件我使用llvm-clang而不是llvm-gcc? (本指南说使用llvm-gcc,但它不起作用:http://llvm.org/releases/3.0/docs/GettingStarted.html#tutorial)或者因为我在使用llvm-3.0时选择了2.8版本?

1 个答案:

答案 0 :(得分:5)

您应该使用与正在构建传递的LLVM版本相同的opt版本。