6

我也是 iphone 开发和 phonegap 的新手。现在我想使用 phonegap 创建简单的 iphone 应用程序。现在我在lion mac 中使用phonegap2.0。我的 Xcode 版本是 4.3。现在我的问题是在我的 Simulator 5.0 中运行 Xcode 时在 xcode 中安装 phonegap2.0 之后。我得到了以下错误。

"Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_CDVViewController", referenced from:
      _OBJC_CLASS_$_ViewController in ViewController.o
      objc-class-ref in AppDelegate.o
  "_OBJC_METACLASS_$_CDVViewController", referenced from:
      _OBJC_METACLASS_$_ViewController in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)" 

请帮我解决这个问题。提前致谢。我附上了错误页面的屏幕截图供您参考。 在此处输入图像描述

4

4 回答 4

13

检查您的项目是否链接libCordova.a(在我的情况下,Xcode 在将 CordovaLib.xcodeproj 移动到另一个位置时忘记了引用)。

  • 在Project Navigator中选择您的项目
  • 转到摘要选项卡
  • 拖动CordovaLib.xcodeproj > Products > libCordova.a链接框架和库

在此处输入图像描述

清洁和建造。

于 2012-10-04T16:46:03.963 回答
3

请检查您的 ViewController.m 文件并转到 1. 在 xcode 中构建阶段 2. 选择编译源 3. 按 + 按钮添加 .m/.mm 文件

我认为它现在会成功运行

于 2012-09-27T07:58:18.950 回答
2

从您的项目和引用的子项目 Cordova 的构建设置中删除 armv7s。将目标设置为 4.3。

于 2012-10-02T23:59:21.377 回答
0

我有一个类似的问题。不知何故,我的核心数据实体的 NSManagedObject 子类在 Compile Sources 表中出现了两次。当编译器遇到这些重复项中的第一个时,它会窒息。

我刚刚进入 Compile Sources 表并删除了每个 .m 列表的第二次出现。

于 2013-12-05T19:56:05.353 回答