llvmのPassのコンパイル実行
『きつねさんでもわかるLLVMコンパイラを自作するためのガイドブック』の本にはPassのコンパイルを行うときに
g++ -g ./src/easypass.cpp -I./inc
llvm-config --cflags --ldflags --libs
-c -o easypass.o
でeasypass.oを作成し、
g++ -g -sahred -o ./bin/easypass.so easypass.o
で共有ライブラリを作成し、
opt -load ./bin/easypass.so -easypass ./sample/test.ll -S > /dev/null
で共有ライブラリをロードしているが、
エラー文:undefined symbol: _ZTIN4llvm12FunctionPassE
が出力されたので、
g++ -g (easypass.cppを指定)
llvm-config --cxxflags --ldflags --libs
-c -o (easypass.oを作成する場所)
で--cxxflagsでc++を指定したらエラーが直った。
--?の機能は今後気が向いたら調べていこうと思う(多分やらない)
Author And Source
この問題について(llvmのPassのコンパイル実行), 我々は、より多くの情報をここで見つけました https://qiita.com/sugu24/items/9bcb37e6e4a29b6c1c5c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .