팁(트러블슈팅)
AFL++ 설치시에 afl-lto 설치 안될때해결
JUNFUTURE
2024. 2. 12. 20:08
afl-lto가 설치되지않는 경우 => llvm 버전 때문일 확률이 높다.
AFL++에서 공식적으로 llvm 버전 11이하에서는 afl-lto가 설치되지 않는다고 공표했다.
![](https://blog.kakaocdn.net/dn/7ZpZz/btsEGTnnzBi/0ssjrV1nsPptpdEHbydtyk/img.png)
![](https://blog.kakaocdn.net/dn/sj72x/btsEGhB1CAF/FugtMxRg6dIvUTaKqZImVk/img.png)
llvm 버전확인 및 설치하는방법 (링크)
아래 링크를 참고해서 현재 llvm 버전이 몇인지 확인해보자.
https://juntheworld.tistory.com/173
Ubuntu LLVM 설치 및 버전확인 방법 (export LLVM_CONFIG)
버전확인 설치된 llvm 버전확인 /usr/lib/ 경로에서 설치된 llvm-N 폴더를 확인하면된다. cd /usr/lib # llvm-N 폴더 여부 확인 현재 설정된 환경변수(LLVM_CONFIG) 값 확인 LLVM을 사용하여 컴파일을 진행할 경
juntheworld.tistory.com
LLVM > 12 설치 및 AFL++ 재컴파일 (2024.2)
afl++에서 afl-clang-lto를 쓰려면 llvm 12 이상 버전을 써야한다고 공표했다.
![](https://blog.kakaocdn.net/dn/bPx2bH/btsEGO7u85M/eiWxGfIgddBDOi5TLznKUK/img.png)
LLVM 12 설치
sudo apt-get install -y lld-12 llvm-12 llvm-12-dev clang-12 || sudo apt-get install -y lld llvm llvm-dev clang
LLVM_CONFIG 세팅
LLVM_CONFIG가 잘 세팅되면, llvm-mode에서 잘 인식한다.
afl-lto 설치 잘 됨!
/usr/lib/llvm-11을 삭제하고, export LLVM_CONFIG="llvm-config-12" 후에
make distrub
을 하면 아래와 같이
![](https://blog.kakaocdn.net/dn/buLM3J/btsEGMu7yo3/Yak9j59XQuNyceVbj2MW8K/img.png)
sudo make install
![](https://blog.kakaocdn.net/dn/bfg4uP/btsEFNH3rsv/bJGwkOqb6PcEEiy3IOKdMk/img.png)