欢迎关注个人的微信公众号《Android安全工程》(可点击进行扫码关注)。个人微信公众号主要围绕 Android 应用的安全防护和逆向分析, 分享各种安全攻防手段、Hook 技术、ARM 汇编等 Android 相关的知识。
源码编译环境: ubuntu 22.04.1 LTS
产物使用环境: window10
NDK版本: 23.1.7779620
选择的NDK版本:
NDK
对应的 llvm 版本:
源码下载
采用清华源
把 NDK 下的 %ANDROID_SDK_PATH%\ndk\23.1.7779620\toolchains\llvm\prebuilt\windows-x86_64的 manifest_7714059.xml 文件替换掉 .repo 下的 manifest/default.xml 文件替换(或者直接把内容替换):
%ANDROID_SDK_PATH%\ndk\23.1.7779620\toolchains\llvm\prebuilt\windows-x86_64
manifest_7714059.xml
.repo
manifest/default.xml
这里的 manifest_7714059.xml 文件内的 google 相关的链接需替换成 af1K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6E0K9i4u0J5L8%4u0K6i4K6u0W2N6s2g2F1j5g2)9J5k6i4c8K6K9h3&6Y4K9s2g2S2i4K6u0W2k6h3c8#2i4K6u0W2j5$3&6Q4x3V1j5`.
af1K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6E0K9i4u0J5L8%4u0K6i4K6u0W2N6s2g2F1j5g2)9J5k6i4c8K6K9h3&6Y4K9s2g2S2i4K6u0W2k6h3c8#2i4K6u0W2j5$3&6Q4x3V1j5`.
需要注意,.repo是隐藏文件夹。可能直接在 Window 下复制文件到 Linux 系统出现乱码问题,推荐使用 FileZilla 复制文件。
FileZilla
编译
--no-build linux表示不需要编译 Linux 环境下的 toolchain 。
--no-build linux
通过比较 toolchains\llvm\prebuilt\windows-x86_64/bin 文件夹下的 clang.exe 和 clang++.exe 发现,两者的 md5 值是相同的,读者感兴趣可以尝试比较下。故可以通过上述的步骤来解决 ollvm 编译出的 clang++.exe 报错问题。
toolchains\llvm\prebuilt\windows-x86_64/bin
clang.exe
clang++.exe
直接把编译好后out/install/windows-x86/clang-dev/bin中的 clang.exe替换对应的NDK中的toolchains\llvm\prebuilt\windows-x86_64/bin 的 clang.exe 和 clang++.exe(需把编译出的 clang.exe 拷贝重命命名替换原NDK中的 clang++.exe)
out/install/windows-x86/clang-dev/bin
问题解决
报错:ImportError: libffi.so.6: cannot open shared object file: No such file or directory
ImportError: libffi.so.6: cannot open shared object file: No such file or directory
解决:
find /usr/lib -name libffi.so*
sudo ln -s /usr/lib/x86_64-linux-gnu/libffi.so.8 /usr/lib/x86_64-linux-gnu/libffi.so.6
4b5K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6C8K9#2)9J5k6r3I4S2L8$3N6#2L8#2)9J5c8X3!0D9L8s2k6E0i4K6u0V1x3e0x3`.
b06K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4y4@1M7X3W2$3k6h3#2S2M7X3W2G2i4K6u0W2N6$3!0J5K9#2)9J5c8X3q4J5j5$3S2A6N6X3g2K6i4K6u0r3y4o6R3^5j5K6k6W2y4e0c8Q4x3X3g2Z5N6r3#2D9
【清羽】Windows10下编译OLLVM-14.x
da0K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6S2L8X3c8J5L8$3W2V1i4K6u0W2k6$3!0G2k6$3I4W2M7$3!0#2M7X3y4W2i4K6u0W2j5$3!0E0i4K6u0r3N6r3!0G2L8r3y4Z5j5h3W2F1i4K6u0r3L8r3I4$3L8g2)9#2k6X3q4F1k6s2u0G2K9h3c8Q4x3V1j5`.
https://bbs.kanxue.com/thread-271271.htm
..\Android\Sdk\ndk\
23.1
.
7779620
[招生]系统0day安全班,企业级设备固件漏洞挖掘,Linux平台漏洞挖掘!