Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GVRSDK iOS Xcode链接器错误_Ios_Swift_Xcode_Cocoapods - Fatal编程技术网

GVRSDK iOS Xcode链接器错误

GVRSDK iOS Xcode链接器错误,ios,swift,xcode,cocoapods,Ios,Swift,Xcode,Cocoapods,我正在尝试在我的iOS应用程序中创建一个GVRCardboardView,该应用程序是用Xcode 8.2、Swift 3.0编写的。我有一个正在运行的GVRVideoView,但在使用GVRCardboardView添加时无法编译应用程序。我使用桥接头来访问Carboard SDK的目标C文件 这是头文件: #ifndef Bridging_Header_h #define Bridging_Header_h #import "GVRWidgetView.h" #import "GVRPan

我正在尝试在我的iOS应用程序中创建一个GVRCardboardView,该应用程序是用Xcode 8.2、Swift 3.0编写的。我有一个正在运行的GVRVideoView,但在使用GVRCardboardView添加时无法编译应用程序。我使用桥接头来访问Carboard SDK的目标C文件

这是头文件:

#ifndef Bridging_Header_h
#define Bridging_Header_h

#import "GVRWidgetView.h"
#import "GVRPanoramaView.h"
#import "GVROverlayView.h"
#import "GVRVideoView.h"
#import "GVRHeadTransform.h"
#import "GVRCardboardView.h"
#import "GVRAudioEngine.h"

#endif
编译时产生的错误

ld: library not found for -lGVRView_arm
clang: error: linker command failed with exit code 1 (use -v to see invocation)
如果我将播客文件更改为:reference@

致:

然后,产生的错误更改为:

Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_GVRCardboardView", referenced from:
  objc-class-ref in MyGVRViewController.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
现在应用程序似乎可以找到-lGVRView_arm代码,但现在没有正确链接到GVRCardboardView目标C类

我错过了什么?为什么我的应用程序无法编译

-编辑-

由于错误说明了架构armv7有一个未定义的符号,我尝试了一个带有arm64的较新设备。我仍然收到一个类似的错误。

将pod“CardboardSDK”添加到pod文件中,进行pod安装,然后将以下内容导入桥接头中

#import "GCSCardboardView.h"
#import "GCSCardboardAudioEngine.h"
#import "GCSHeadTransform.h"
#import "GCSWidgetView.h"
#import "GCSPanoramaView.h"
#import "GCSVideoView.h"

确保从pod文件中删除pod“GVRSDK”。该方法在Xcode 8.2.1 Swift 3.0.2上对我有效,据该项目的一位合作者称,这是GVRSDK 1.10.0版最新版本中的一个bug

当试图在同一项目中使用某种形式的GVRVideoView或其他GVRView类和GVRCardboardView时,会出现问题。在最新版本中,这些类被分成不同的.a文件:libGVRSDK_arm.a和libGVRView_arm.a。试图同时下载和使用这两个文件将导致重复的文件错误

要解决此问题,请将CocoaPod的早期版本与以下Pod文件一起使用,并等待更新

target 'My App Name' do
    pod 'GVRSDK', '1.0.1'
end

我不得不添加“使用框架”来实现这一点,我相信刚才添加了“使用框架!”到播客文件。这样的幸运儿是行不通的,但它只是回到了CocoaPod的前一个版本。我没有将7个版本返回到v0.7.1,而是将一个版本返回到v1.0.1,其中包含以下内容:pod'GVRSDK','1.0.1'Oh,然后我也将移动到1.0.1而不是0.7.1
#import "GCSCardboardView.h"
#import "GCSCardboardAudioEngine.h"
#import "GCSHeadTransform.h"
#import "GCSWidgetView.h"
#import "GCSPanoramaView.h"
#import "GCSVideoView.h"
target 'My App Name' do
    pod 'GVRSDK', '1.0.1'
end