首頁
社區(qū)
課程
招聘
Mac平臺opt 加載pass出錯

Mac平臺上 Xcode12.5版本,下載最新的LLVM-project使用下面進行編譯,生成Xcode工程,編譯了clang、opt

1
cmake -S llvm -B build -G Xcode -DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi;clang-tools-extra;compiler-rt"

編寫了這個pass

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "llvm/Pass.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/raw_ostream.h"
using namespace llvm;
namespace {
    struct Kratos :public FunctionPass{
    static char ID;
        Kratos():FunctionPass(ID){}
        bool runOnFunction(Function &F) override{
            errs()<<"Hello:";
            errs().write_escaped(F.getName())<<"\n";
            return  false;
        }
    };
 
}
char Kratos::ID =0;
static RegisterPass<Kratos> X("Kratos","Hello world pass",false,false);

 

 

然后使用編譯好的opt加載命令如下, Command+R在Xcode運行

 

出現(xiàn)如下錯誤
/Users/k/Desktop/llvm/llvm-project/build/Debug/bin/opt: unknown pass name 'Kratos'

 

在網(wǎng)上找了好多次資料,都找不到解決辦法,求求大佬看看

收藏
1條回答
34r7hm4n 2021-10-24

不好意思現(xiàn)在才看到這個提問。
Mac平臺我也不太熟悉,編譯的時候有報錯嗎?

回復
LLVM與代碼混淆技術(shù)
  參與學習     318 人
  提問次數(shù)     12 個
《LLVM與代碼混淆技術(shù)》詳解3種經(jīng)典代碼混淆方式+2種變體
0
我的提問
0
我的回答
0
學習收益