架构x86_64的未定义符号是什么意思?

时间:2013-12-08 03:07:24

标签: eigen glew

我正在尝试使用Lion在我的Mac Air上构建eigen。我下载了eigen3(来自http://eigen.tuxfamily.org/index.php?title=Main_Page)并已成功运行make install。但是,当我尝试运行make check时,我收到以下错误。

[  1%] Built target sparse_extra_2
Linking CXX executable openglsupport
ld: warning: ignoring file /System/Library/Frameworks//GLEW.framework/GLEW,
            missing required architecture x86_64 in file
Undefined symbols for architecture x86_64:
  "_glewExperimental", referenced from:
      test_openglsupport() in openglsupport.cpp.o
  "_glewInit", referenced from:
      test_openglsupport() in openglsupport.cpp.o
  "_glBegin", referenced from:
      test_openglsupport() in openglsupport.cpp.o

我觉得这个问题与glew有关。我现在正在尝试安装不同版本的glew,但这似乎没有做任何事情。

有关如何解决错误的任何建议?无论如何,架构x86_64的未定义符号意味着什么?

1 个答案:

答案 0 :(得分:1)

这可能意味着您的GLEW安装不完整。您可以使用cmake . -DEIGEN_TEST_NO_OPENGL=ON正确禁用OpenGL测试。最后,请注意Eigen是一个仅头文件库,因此无需编译即可使用它。