-ObjC值在其他链接器标志中的意义:GMaps SDK

时间:2013-03-06 04:28:48

标签: ios objective-c linker-errors sup google-maps-sdk-ios

我正在尝试将谷歌地图sdk与iOS 6.1集成。我成功地能够通过使用给出的指令在iOS模拟器上填充gmap GMaps for iOS starting guide

那么问题是什么: 当我将它用作单独的项目时,它工作得很好。但是当我使用现有应用程序将上述项目代码加入时,它表现得很奇怪,并且由于在Build Settings中的Other Linker Flags中包含 -ObjC 值而产生了所有错误。

错误 duplicate symbols for architecture i386

当我跳过第7步GMaps iOS)时,它不会出错。由于排除-Ob​​jC值,它无法识别特定的GMaps库类及其方法: [GMSCameraPosition cameraWithLatitude:longitude:zoom:]: unrecognized selector sent

我的iOS应用程序背景: 使用第三方库 SUP (Sybase Unwired Platform)。将SAP连接到iOS应用程序。我想当我尝试添加GMaps库时,SUP环境启用(Build settings)会有些含糊不清。

寻求你的意见。

谢谢!

4 个答案:

答案 0 :(得分:0)

关于架构i386错误的重复符号,SO上有很多帖子。通常,这意味着您在一个命名空间中定义了两次相同的符号。我最后一次收到此错误是因为我意外地包含了 .m 文件而不是 .h 头文件。

答案 1 :(得分:0)

你检查过Build Architecture吗?

尝试将Build Active Architecture Only设为Yes

答案 2 :(得分:0)

今天我遇到了同样的问题! -ObjC linker flag - When trying to add it to "Other Linker Flags" I get an error

我解决了我的问题,这是我的建议。获取原始项目(不使用Gmaps和SUP)并将-ObjC标志添加到其中。你还得错吗?如果是这样,请将Gmaps排除在等式之外。如果您仍然收到错误,请检查警告您警告哪些文件。我的问题是我有两个文件libGoogleAnalytics.a和libGoogleAnalytics_debug.a,由于某种原因,他们无法与-ObjC共存。

简而言之,您需要找到您已在项目中使用的Gmaps库并删除其中一个库。

答案 3 :(得分:0)

请试试这个......

步骤1:将“-ObjC”添加到“目标”的“构建设置”中的其他链接器标记,而不是“项目”