7

我现在正在尝试在 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 代码,并认为问题是我缺少他们在他们的应用程序中使用的几个框架,但包括这些框架只会增加我得到的错误数量。这是构建设置问题吗?有人知道我可以尝试做什么吗?

PS:我找到了两个类似这个问题的线程,尝试了他们推荐的各种解决方案,仍然没有得到解决

-http://stackoverflow.com/questions/1452466/suddenly-i-am-not-able-to-build-for-the-iphone-simulator -http://stackoverflow.com/questions/1456185/build-error -缺少所需架构-i386-in-file/1467238#1467238

我希望我正确使用了这个线程......我对堆栈溢出比较陌生。吨

4

3 回答 3

13

我能够玩弄它并让它工作。

我将 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

我不知道在构建阶段中声明框架的顺序很重要。无论如何,希望对于任何试图将条形码扫描仪集成到他们的应用程序中的人来说,这个答案都会很有用。

于 2011-05-13T13:47:16.673 回答
1

在编写使用 CoreData 的应用程序时,我遇到了类似的问题。事实证明,构建阶段部分不包括关键的 class.m 文件。我手动将它添加到列表中(尽管它已经在项目中)并且一切正常。我以前从未见过 Xcode 忽略这样的项目文件。

于 2012-05-08T01:44:18.443 回答
0

在“Link Binary With Libraries”下的 Xcode 构建阶段手动添加 UIKit.framwork 它解决了我同样的问题。

于 2020-03-21T06:57:07.633 回答