2012-03-07 3 views
0

내가이 설명서 사용하고 있습니다 : LLVM 패스를 만들기위한 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' 

메모를 사용할 때 다음과 같은 오류가 있지만 "출시"

누군가가 문제를 알고 있습니까?

아마도 Hello.bc 파일을 만들기 위해 llvm-gcc 대신 llvm-clang을 사용했기 때문일 수 있습니까? (이 가이드는 llvm-gcc를 사용한다고 말합니다. 그러나 작동하지 않습니다 : http://llvm.org/releases/3.0/docs/GettingStarted.html#tutorial) llvm-3.0을 사용하는 동안 2.8 버전을 선택했기 때문에 어쩌면 요?

답변

4

패스를 빌드하려는 LLVM 버전과 동일한 버전 opt을 사용해야합니다.

+0

좋아요,하지만 어떻게 opt 버전 3.0을 얻을 수 있습니까? 나는 그것을 찾지 못한다 – Nicola

+0

좋아, 나는 모두 해결했다! :) ... 나는 아직도 내 PC에 llvm-2.9와 llvm-2.8을 가지고 있었다. 이제는 llvm-3.0 만 있고, .bc 파일을 다시 만들고 지금은 작동합니다! :) Thankyou – Nicola

+0

당신은 내 대답을 upvote, 그래서 해결로 볼 수있다 :) – joey