type
status
date
slug
summary
tags
category
icon
password
Property
Aug 8, 2023 11:36 AM
本文基于 ndk r25c (25.2.9519653)
获取ndk r25c
直接下载
使用sdkmanager安装
坑:archlinux 需要sudo archlinux-java set java-8-openjdk
查看clang信息
内容:
下载未精简的clang
然后去Google的 prebuilt clang仓库找到 r450784d1 相关的分支并打开:
点开最新的一个commit,进入
然后点击tgz下载这一份clang
然后基于这一份clang直接编译llvm动态库插件就可以直接用ndk加载了
解压
编译使用pass实例
- 下载代码
- 修改 CMakeLists.txt,在
project()
后加上
这个时候
cmake ..
会报错这个时候去注释掉
clang/lib64/cmake/llvm/LLVMExports.cmake
下面这一段代码然后
build.sh:
编译后:
差不多鸟~
当我们来到macOS上
由于Google编译macOS工具链的系统版本太低,加载so的时候会报错
解决办法:
使用下载的clang替换掉ndk里面的clang
找不到头文件是macOS的问题,修改
build.sh
为后重新编译,成功混淆