[我现在正在尝试在Xcode 4.0中构建的项目遇到问题,希望有人可以为我提供一些启发。
我正在尝试使用ZBar SDK,并遵循了此处概述的指南中概述的说明:
http://zbar.sourceforge.net/iphone/sdkdoc/camera.html
但是,我遇到了同样的错误。我查看了John的帖子,但是,他提到的路径不在我的LIBRARY_SEARCH_PATH中。
我正在使用Xcode 4.0,并试图为iPad 4.3模拟器构建我的项目。
(我得到的错误):
Undefined symbols for architecture i386:
"_objc_msgSend", referenced from:
_main in main.o
-[PrototypeAppDelegate application:didFinishLaunchingWithOptions:] in PrototypeAppDelegate.o
-[PrototypeAppDelegate dealloc] in PrototypeAppDelegate.o
-[Home loadGRView] in Home.o
...
"_UIApplicationMain", referenced from:
_main in main.o
"_OBJC_CLASS_$_NSAutoreleasePool", referenced from:
objc-class-ref in main.o
"_objc_msgSendSuper2", referenced from:
-[PrototypeAppDelegate dealloc] in PrototypeAppDelegate.o
-[PrototypeAppDelegate_iPhone dealloc] in PrototypeAppDelegate_iPhone.o
...
"_objc_setProperty", referenced from:
-[PrototypeAppDelegate setTabBarController:] in PrototypeAppDelegate.o
-[PrototypeAppDelegate setTheNavController:] in PrototypeAppDelegate.o
...
等
我曾尝试查看ZBar sdk随附的ReaderSample代码,并认为问题是我缺少了他们在其应用程序中使用的几个框架,但是包括这些框架只会增加我得到的错误数量。这是构建设置问题吗?有人对我可以尝试做的事情有想法吗?
P.S:我发现有两个与此问题相似的线程,并尝试了他们推荐的各种解决方案,但仍然无法获得解决方案
-http://stackoverflow.com/questions/1452466/suddenly-i-am-not-able-to-build-for-the-iphone-simulator-http://stackoverflow.com/questions/1456185/build-error-missing-required-architecture-i386-in-file/1467238#1467238
我希望我正确地使用了这个线程...对于堆栈溢出,我还是比较新的。 T
我能够玩转并使其正常工作。
我将Xcode更新为4.0.2。另外,ZBar的文档忘记了使用SDK所需的其他框架(请看ReaderSample应用程序)。 7个框架的顺序如下:
Foundation.framework
CoreGraphics.framework
UIKit.framework
AVFoundation.framework
CoreMedia.framework
CoreVideo.framework
QuartzCore.framework
libiconv.dylib
libzbar.a
我不知道在构建阶段中声明框架的顺序很重要。无论如何,希望对于任何试图将条形码扫描仪集成到其应用程序中的人来说,此答案将是有用的。
[在编写使用CoreData的应用程序时遇到了类似的问题。事实证明,“构建阶段”部分不包含关键的class.m文件。我手动将其添加到列表中(尽管它已经在项目中),并且一切正常。我以前从未见过Xcode忽略这样的项目文件。
在“使用库链接二进制文件”下的Xcode构建阶段手动添加UIKit.framwork它解决了我同样的问题。