gpt4 book ai didi

c++ - 为 iOS 交叉编译 Jansson C 库

转载 作者:太空宇宙 更新时间:2023-11-04 01:30:34 26 4
gpt4 key购买 nike

我正在尝试交叉编译 Jansson从我的机器 (x86_64) 为 iOS (armv7)。我了解到,在 xcode 5 中,apple 删除了 llvm-gcc,因此无法找到 armv7-apple-darwin-gcc。结果库是为 x86_64 编译的。

这是我当前的配置:

./configure --prefix=/resultdir --host=armv7-apple-darwin --target=armv7-apple-darwin

我看到很多人说他们已经为 arm 架构编译了 jansson,所以我知道这是可能的。只是似乎做不到。

关于如何做到这一点有什么想法吗?

最佳答案

我的系统上安装了较旧的 iPhoneOS 5.0 SDK。我相信您也可以使用较新的版本。以下脚本为我成功编译了 Jansson:

export CC="/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang"
export CPP="clang -E"

export SDKPATH="/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk"
export CFLAGS="-arch armv7 -isysroot ${SDKPATH} -miphoneos-version-min=5.0"

export LDFLAGS="-isysroot ${SDKPATH}"

./configure --host=arm-apple-darwin10

make

结果是一个我没有测试的库,但是file返回了一个arm架构的库:

$ file src/.libs/libjansson.4.dylib
src/.libs/libjansson.4.dylib: Mach-O dynamically linked shared library arm

为您安装的 SDK 适当调整 SDKPATH-miphoneos-version-min=5.0

关于c++ - 为 iOS 交叉编译 Jansson C 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23304707/

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