跟着铁头干混淆2 ubuntu20.04编译ollvm
写这篇文章之前,我安装了一波ollvm环境,中间遇到了很多坑爹问题。然后几乎看完了网上所有的相关
文章。
还把ollvm git上面的几乎所有编译报错的反馈都看了。
终于解决了遇到的大部分问题,然后有了这篇文章。
视频演示:https://space.bilibili.com/430241559
初始环境:
ubuntu20.04
gcc 9.3.0
g++ 9.3.0
cmake 3.16.3
docker方式编译ollvm分为4步
- 下载ollvm 4.0源码 (啥,觉得老?初学者的话 4.0跟12.0对你来说区别不大)
- 配置编译工具
- 修改ollvm源码
- 编译 ollvm
- 配置 ndk
1.下载ollvm 4.0源码
ollvm git地址: https://github.com/obfuscator-llvm/obfuscator
下载 ollvm 4.0代码
git clone -b llvm-4.0 --depth=1 https://github.com/obfuscator-llvm/obfuscator.git
这里 -b llvm-4.0是选择 llvm-4.0的分支
--depth=1 表示只下载最后一次提交的版本
这样的话,项目文件就不会太大。毕竟github连接速度感人。
2.配置编译工具
编译ollvm要用到的工具是
cmake
gcc
g++
1) 安装cmake
这里 cmake 直接安装最新版就可以了
sudo apt-get install cmake -y
2) 安装 gcc-8 g+±8 降低版本
这里大佬们的环境 gcc 和 g++的版本如果就是 8.x.x
这里就可以直接下一步了
这里有坑的是 gcc g++
这里大佬们的环境 如果 gcc g++的版本是8.x.x 可以直接忽略这一步,看下一步了
铁头实测, gcc-9 g+±9 编译一定会失败。