同事说上次编译的Liphone在某些SIP Server上有单通的现象,于是重新下载了代码编译一次,结果这回出现一个错误:
llvm-gcc-4.2: Invalid arch name : armv7s
对于水果的东西还真是不太熟,搞了小半天终于明白了,armv7s是IPhone 5的A6处理器的指令集,上次编译的时候还没有,用的是armv7,现在Linphone已经支持IPhone5了,所以是我的gcc太老了支持armv7s。我的XCode是4.5,用的llvm-gcc是XCode自带的,但是MacPorts好像也有gcc,所以昨晚走的时候一边port upgrade一边重新安装XCode Command Line Tools,结果早上来的时候已经可以编译了,只不过搞不清楚倒是哪个升级的gcc,:), 估计还是xcode的可能性比较大。现在的gcc版本是:
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
不过倒是也看到有老外说未经真机测试不要发布支持IPhone5的应用,说的也有道理,升级到iOS6的4s确实不能替代IPhone5来做测试,好吧,反正IPhone5快上了,搞一台来做测试吧。
20121207: 晕死了,发现上次编译成功是因为那天下班前我把Makefile里头的armv7s改成armv7了,然后又升级了port和xcode,结果就忘了Makefile这回事儿了,所以实际上新代码还是按照armv7编译的,不是armv7s。这个问题还在,还得再看看。