c++ - 使用 GLFW3 编译,链接器错误 'undefined reference'

标签 c++ xcode macos opengl glfw

有一个使用 GLFW3 的最小示例:

#include <GLFW/glfw3.h>

int main(int argc, const char * argv[]) {
    glfwInit();
}

...导致大量链接器错误:(小摘录)

Undefined symbols for architecture x86_64:
  "_CFArrayAppendValue", referenced from:
      _addJoystickElement in libglfw3.a(cocoa_joystick.m.o)
  "_CFArrayApplyFunction", referenced from:
      __glfwInitJoysticks in libglfw3.a(cocoa_joystick.m.o)
      _addJoystickElement in libglfw3.a(cocoa_joystick.m.o)
  "_CFArrayCreateMutable", referenced from:
      __glfwInitJoysticks in libglfw3.a(cocoa_joystick.m.o)

  ...

  "_objc_msgSend_fixup", referenced from:
  l_objc_msgSend_fixup_count in libglfw3.a(cocoa_monitor.m.o)
  l_objc_msgSend_fixup_objectAtIndex_ in libglfw3.a(cocoa_monitor.m.o)
  l_objc_msgSend_fixup_objectForKey_ in libglfw3.a(cocoa_monitor.m.o)
  l_objc_msgSend_fixup_alloc in libglfw3.a(cocoa_init.m.o)
  l_objc_msgSend_fixup_release in libglfw3.a(cocoa_init.m.o)
  l_objc_msgSend_fixup_alloc in libglfw3.a(nsgl_context.m.o)
  l_objc_msgSend_fixup_release in libglfw3.a(nsgl_context.m.o)
  ...

OpenGL.frameworklibglfw3.a 都是链接的。

enter image description here

这是什么原因?之前编译一个 glfw2 应用程序就像一个魅力。

最佳答案

关于c++ - 使用 GLFW3 编译,链接器错误 'undefined reference',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18391487/

相关文章:

c++ - 如何将stderr重定向到/dev/null

xcode - 如何屏蔽 UIScrollView?

cocoa - 通过 Mac App Store 分发应用程序时,我应该更改代码以避免盗版吗?

xcode - 如何调试来自用户 : [__NSCFNumber localizedStandardCompare:]: unrecognized selector sent to instance 的控制台消息

ios - Crashlytics 和 Xcode 10

c - 如何在 .bundle 文件中模拟 objdump --dwarf=decodedline?

自升级到 Mac OSX 10.10 以来,从 R 控制台运行系统命令无法找到已安装的程序

c++ - 我可以确定参数是否是字符串文字吗?

c++ - 是否允许主线程在进入 main() 之前生成 POSIX 线程?

C++ 从对象创建 shared_ptr