如何为iphone构建mp4v2

时间:2012-05-26 18:33:20

标签: iphone ios compiler-errors cross-compiling

我是ios开发的新手,我想使用mp4v2库。我已成功编译为iphone模拟器,i386,但我在编译iphone架构时遇到问题。配置/制作i386非常简单:

./configure --disable-gch --enable-ub=i386

然而,使用armv6 / 7作为标签不起作用

./configure --disable-gch --enable-ub=armv6,armv7

配置工作时,make命令导致以下错误:

/bin/sh ./libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H   -arch i386 -arch armv6 -arch armv7 -I./include -I./include -I. -I.  -Wall -Wformat -g -O2 -fvisibility=hidden -c -o src/3gp.lo src/3gp.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -arch i386 -arch armv6 -arch armv7 -I./include -I./include -I. -I. -Wall -Wformat -g -O2 -fvisibility=hidden -c src/3gp.cpp  -fno-common -DPIC -o src/.libs/3gp.o
llvm-g++-4.2: error trying to exec '/usr/bin/../llvm-gcc-4.2/bin/arm-apple-darwin11-llvm-g++-4.2': execvp: No such file or directory
llvm-g++-4.2: error trying to exec '/usr/bin/../llvm-gcc-4.2/bin/arm-apple-darwin11-llvm-g++-4.2': execvp: No such file or directory
lipo: can't figure out the architecture type of: /var/folders/b6/vmqqncd55k79nb1nc4x30nwr0000gn/T//cctU2lnr.out
make: *** [src/3gp.lo] Error 1

如何为iphone编译?

2 个答案:

答案 0 :(得分:3)

我想这个错误是由于尝试从系统根路径/usr/bin/../llvm-gcc-4.2/bin/arm-apple-darwin11-llvm-g++-4.2而不是Developer文档中找到交叉编译器引起的。 一个小愚蠢的解决方案是在系统根路径llvm-gcc-4.2中创建一个符号链接/usr,指向真实路径。

答案 1 :(得分:-1)

我相信您可能需要验证您的xcode-select(1)值,以便您的路径包含新的xcode发布树。应该在/ Applications / xcode下找到最新版本的工具。