如何摆脱Apple Mach-O链接器错误?

Ale*_*psa 2 xcode objective-c ios xcode5

首先,我有一个 Could not build module Foundation

试图通过设置Enable Modules (C and Objective-C)来解决这个问题NO

在另一个构建后,我得到了这些奇怪的错

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_EAGLContext", referenced from:
      objc-class-ref in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_OBJC_CLASS_$_GLKBaseEffect", referenced from:
      objc-class-ref in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_OBJC_CLASS_$_GLKViewController", referenced from:
      _OBJC_CLASS_$_EZAudioPlotGLKViewController in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_OBJC_CLASS_$_NSEntityDescription", referenced from:
      objc-class-ref in JSONModel+CoreData.o
  "_OBJC_CLASS_$_NSManagedObject", referenced from:
      l_OBJC_$_CATEGORY_NSManagedObject_$_JSONModel in JSONModel+CoreData.o
      objc-class-ref in JSONModel+CoreData.o
  "_OBJC_METACLASS_$_GLKViewController", referenced from:
      _OBJC_METACLASS_$_EZAudioPlotGLKViewController in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_SSLClose", referenced from:
      -[GCDAsyncSocket closeWithError:] in GCDAsyncSocket.o
  "_SSLCopyPeerTrust", referenced from:
      -[GCDAsyncSocket ssl_continueSSLHandshake] in GCDAsyncSocket.o
  "_SSLCreateContext", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLGetBufferedReadSize", referenced from:
      ___33-[GCDAsyncSocket flushSSLBuffers]_block_invoke in GCDAsyncSocket.o
      -[GCDAsyncSocket doReadData] in GCDAsyncSocket.o
  "_SSLHandshake", referenced from:
      -[GCDAsyncSocket ssl_continueSSLHandshake] in GCDAsyncSocket.o
  "_SSLRead", referenced from:
      -[GCDAsyncSocket flushSSLBuffers] in GCDAsyncSocket.o
      -[GCDAsyncSocket doReadData] in GCDAsyncSocket.o
  "_SSLSetCertificate", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetConnection", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetEnabledCiphers", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetIOFuncs", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetPeerDomainName", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetPeerID", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetProtocolVersionMax", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetProtocolVersionMin", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLSetSessionOption", referenced from:
      -[GCDAsyncSocket ssl_startTLS] in GCDAsyncSocket.o
  "_SSLWrite", referenced from:
      -[GCDAsyncSocket doWriteData] in GCDAsyncSocket.o
  "_glBindBuffer", referenced from:
      -[EZAudioPlotGLKViewController _updateBufferPlotBufferWithAudioReceived:withBufferSize:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _updateRollingPlotBufferWithAudioReceived:withBufferSize:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawBufferPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawRollingPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glBufferData", referenced from:
      -[EZAudioPlotGLKViewController _updateBufferPlotBufferWithAudioReceived:withBufferSize:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _updateRollingPlotBufferWithAudioReceived:withBufferSize:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glBufferSubData", referenced from:
      -[EZAudioPlotGLKViewController _clearRollingPlot] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _updateBufferPlotBufferWithAudioReceived:withBufferSize:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _updateRollingPlotBufferWithAudioReceived:withBufferSize:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _updateRollingPlotDisplay] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glClear", referenced from:
      -[EZAudioPlotGLKViewController glkView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glClearColor", referenced from:
      -[EZAudioPlotGLKViewController _refreshWithBackgroundColor:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glDrawArrays", referenced from:
      -[EZAudioPlotGLKViewController _drawBufferPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawRollingPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glEnableVertexAttribArray", referenced from:
      -[EZAudioPlotGLKViewController _drawBufferPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawRollingPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glGenBuffers", referenced from:
      -[EZAudioPlotGLKViewController viewDidLoad] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glLineWidth", referenced from:
      -[EZAudioPlotGLKViewController viewDidLoad] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glPopMatrix", referenced from:
      -[EZAudioPlotGLKViewController _drawBufferPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawRollingPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glPushMatrix", referenced from:
      -[EZAudioPlotGLKViewController _drawBufferPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawRollingPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
  "_glVertexAttribPointer", referenced from:
      -[EZAudioPlotGLKViewController _drawBufferPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
      -[EZAudioPlotGLKViewController _drawRollingPlotWithView:drawInRect:] in EZAudioPlotGLKViewController-11ED1EEF7D7801BD.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

我很无能为力.这是在我从SVN存储库更新此项目后发生的.

tro*_*foe 5

您需要链接以下框架:

CoreData.framework
GLKit.framework
Security.framework
Run Code Online (Sandbox Code Playgroud)

这是在Xcode的以下部分完成的:

在此输入图像描述