有没有人知道要传递的正确标志,以便为iOS模拟器交叉编译LuaJIT?我设法让它在设备上运行,但是我在为模拟器构建时遇到了麻烦,我无法在网络上的任何地方找到一个有效的示例。
谢谢!
LuaJIT checkout内部(我正在使用v2.1分支):
IXCODE=`xcode-select -p`
ISDK=$IXCODE/Platforms/iPhoneSimulator.platform/Developer
ISDKVER=iPhoneSimulator8.1.sdk
ISDKP=/usr/bin/
ISDKF="-arch i386 -isysroot $ISDK/SDKs/$ISDKVER"
make clean
make HOST_CFLAGS="-arch i386" HOST_LDFLAGS="-arch i386" TARGET=x86 CROSS=$ISDKP TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
这是我收到的错误消息:
ld:为MacOSX构建,但是为针对iOS模拟器文件构建的dylib链接'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/usr/lib/ libSystem.dylib'用于体系结构i386
建立armv7作品:
IXCODE=`xcode-select -p`
ISDK=$IXCODE/Platforms/iPhoneOS.platform/Developer
ISDKVER=iPhoneOS8.1.sdk
ISDKP=/usr/bin/
ISDKF="-arch armv7 -isysroot $ISDK/SDKs/$ISDKVER"
make clean
make HOST_CC="gcc -m32 -arch i386" CROSS=$ISDKP TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
答案 0 :(得分:0)
将-mios-simulator-version-min = 8.1添加到您的TARGET_FLAGS
ISDKF="-arch i386 -isysroot $ISDK/SDKs/$ISDKVER"
应该是
ISDKF="-arch i386 -mios-simulator-version-min=8.1 -isysroot $ISDK/SDKs/$ISDKVER"
您可能还需要设置
BUILDMODE="static"
您可能需要设置ios-simulator-version-min以匹配模拟器sdk版本。 8.2适用于Xcode 6.2。