[英]how to compile fftw3 on iOS
如今,我只想在iOS上使用FFTW3,因为我已将其成功编译为iOS模拟器使用的i386版本,剩下的工作是将其编译为armv6(或v7)版本并将lipo这两个版本一起封装如下是我不正确的配置:
./configure CC = / Developer / Platforms / iPhoneOS.platform / Developer / usr / bin / arm-apple-darwin10-gcc-4.2.1 LD = / Developer / Platforms / iPhoneOS.platform / Developer / usr / bin / ld CCFLAGS =“-I /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/usr/lib/gcc/arm-apple-darwin10/4.2.1/include/ -I / Developer / Platforms / iPhoneOS。平台/开发人员/SDKs/iPhoneOS4.2.sdk/usr/include/ -miphoneos-version-min = 2.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk“ LDFLAGS = “ -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk” --enable-float --host = arm-apple-darwin --build = arm-apple-darwin10-禁用,FORTRAN
当使用它来构建fftw3时,我总是这样:
检查与BSD兼容的安装... / usr / bin / install -c检查构建环境是否正常...是,检查arm-apple-darwin-strip ...不检查剥离...剥离配置:警告:使用不带主机三重前缀的交叉工具检查线程安全的mkdir -p...。/ install-sh -c -d检查gawk ...不检查mawk ...不检查nawk .. 。不检查awk ...检查akk是否设置$(MAKE)...是,检查是否启用Makefile的维护者特定部分...不检查构建系统类型... arm-apple-darwin10检查主机系统键入... arm-apple-darwin检查arm-apple-darwin-gcc ... /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1检查是否C编译器正常工作...无配置:错误:在/Users/chencyz/Desktop/Development/Misc/fftw3/fftw-3.3': configure: error: C compiler cannot create executables See
详细信息, /Users/chencyz/Desktop/Development/Misc/fftw3/fftw-3.3': configure: error: C compiler cannot create executables See
config.log'
我对这个问题不太清楚(C编译器不起作用吗?),谁能给我一些指南,非常感谢!
根据./configure --help:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
因此,关键是传递--host = arm-apple-darwin10,并使用对PATH,CFLAGS,LDFLAGS等的正确更改执行配置。
这似乎可行:
PATH=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:$PATH \
../configure --host=arm-apple-darwin10 CFLAGS="-I/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/include -I/Library/iPhone/include -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk" \
CC=arm-apple-darwin10-gcc-4.2.1 \
CPP=cpp \
LDFLAGS="-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk" \
--enable-single
祝好运。
尝试为iOS进行可爱编译时,我遇到了类似的问题。 查看configure脚本,它似乎没有使用$LDFLAGS
变量,但是如果这样做,我认为您可以将以下内容添加到configure
行:
./configure CC=... CFLAGS="-arch armv7 -isysroot $SDKROOT" CXXFLAGS="$CFLAGS" LDFLAGS="$CFLAGS -Wl,-syslibroot $SDKROOT"
其中$SDKROOT
默认为/Developer/Platforms/iPhone.platform/Developer/SDKs/iPhone5.0.sdk
(对于iOS 5.0 SDK)。
我从来没有得到过很好的编译,因为我不知道如何纠正C编译器调用,但是,您的工作量可能会有所不同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.