gpt4 book ai didi

ios - 如何为 iOS 交叉编译 clang/llvm?

转载 作者:可可西里 更新时间:2023-11-01 03:29:30 26 4
gpt4 key购买 nike

如何交叉编译 clang/llvm for iOS?我需要获取 libclang(我相信是 .a 或 .dylib)才能在我的 iOS 应用程序中通过 C API 使用它。

最佳答案

# Get LLVM/Clang

mkdir llvm
curl -O http://llvm.org/releases/3.4/llvm-3.4.src.tar.gz
tar xzfv llvm-3.4.src.tar.gz
cd llvm-3.4/tools/
curl -O http://llvm.org/releases/3.4/clang-3.4.src.tar.gz
tar xzfv clang-3.4.src.tar.gz
mv clang-3.4 clang
cd ..

# Assuming Xcode 5.1 (LLVM 3.5+ requires -stdlib=libc++ as well)

export CC="clang -arch armv7 -mios-version-min=5.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk"
export CXX="clang++ -arch armv7 -mios-version-min=5.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk"

mkdir build
cd build

../configure \
--prefix=/Users/thomas/tmp/llvm-ios \
--host=arm-apple-darwin11 \
--enable-optimized \
--disable-assertions

unset CC CXX # important! (Otherwise the next step will fail)

make VERBOSE=1 -j...

一段时间后你会得到:

/Users/thomas/tmp/llvm-3.4/lib/Support/Unix/Program.inc:46:10: fatal error: 'crt_externs.h' file not found
#include <crt_externs.h> // _NSGetEnviron
^

注释头文件并破解对 _NSGetEnviron() 的调用(你会得到 3 次)

make install

关于ios - 如何为 iOS 交叉编译 clang/llvm?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23946851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com