作者qrtt1 (有些事,有时候。。。)
看板MacDev
标题Re: [问题] static library用的framework没连进来
时间Wed Mar 7 22:11:00 2012
※ 引述《JmeHsieh (谢吉米)》之铭言:
: 我用xcode4.2
: 有在target/build phase中link staticLibrary.a了
: 有在target/Header Search Paths设定好source header files了
: 但是build的时候发现出现了
: Undefined symbols for architecture i386:
: "_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
: 仔细查看我用的static library里面有用到MessageUI.framework
: 於是我在自己的target中手动加入MessageUI.framework
: 就build过了...
: 也就是说static library用到的framework我没有连上?
: 但是我现在不知道是什麽地方没设定好才会造成这样的结果
: 有人有经验吗~~~~
模拟器的情况,要给它 i386 的 library.
iOS 的情况,要给它分别的 arm6, arm7 的 library。
或是合并在一起的 universal library。
不然你 deploy 需要 arm6 的旧 device 你只给 arm7 的,它会跟你说找不到 arm6 的。
而模拟器的情况,如果你在 xcode 外,自己用 gcc 编的,
他很可能编成 x86_64 的情况。
建议你先确定一下你的 library 是编译给什麽用的,
这可以用 lipo 指令查出来:
$ lipo -info ffplay
Non-fat file: ffplay is architecture: x86_64
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.173.180