Mac OS x

时间:2017-09-27 12:02:48

标签: opengl cmake glut clion freeglut

我目前是一名学生,我的一个模块的课程是关于图形编程的。我们已经为它提供了框架,并且每周学习一个新概念并实施它。

在实验室计算机上工作时一切正常但是我试图从我的macbook上做工作,它给了我很多警告/错误。

我已经在网上找了解如何使用cmake链接目录,我认为我的这部分是正确的。

cmake_minimum_required(VERSION 3.8)
project(GraphicsProgramming_Lab3)

CMAKE_CXX_STANDARD
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.8")

IF(APPLE)
    INCLUDE_DIRECTORIES ( /System/Library/Frameworks )
    FIND_LIBRARY(GLUT_LIBRARY GLUT )
    FIND_LIBRARY(OpenGL_LIBRARY OpenGL )
    MARK_AS_ADVANCED (
            GLUT_LIBRARY
            OpenGL_LIBRARY)
    SET(EXTRA_LIBS ${GLUT_LIBRARY} ${OpenGL_LIBRARY})
ENDIF (APPLE)

set(SOURCE_FILES main.cpp Scene.cpp Scene.h Input.cpp Input.h Vector3.cpp Vector3.h)
add_executable(GraphicsProgramming_Lab3 ${SOURCE_FILES})
target_link_libraries(GraphicsProgramming_Lab3 ${GLUT_LIBRARY})

然而,当我查看我的代码时,我可以看到很多函数都有一行通过它们得分,当我突出显示它时,它告诉我他们已经弃用了。

编译器在尝试构建时给我这条消息:

-- Configuring done
-- Generating done
-- Build files have been written to: 
/Users/leekellie/CLionProjects/GraphicsProgramming_Lab3/cmake-build-debug
[ 40%] Building CXX object 
CMakeFiles/GraphicsProgramming_Lab3.dir/main.cpp.o
[ 40%] Building CXX object 
CMakeFiles/GraphicsProgramming_Lab3.dir/Scene.cpp.o
[ 60%] Building CXX object 
CMakeFiles/GraphicsProgramming_Lab3.dir/Input.cpp.o
[ 80%] Building CXX object 
CMakeFiles/GraphicsProgramming_Lab3.dir/Vector3.cpp.o
[100%] Linking CXX executable GraphicsProgramming_Lab3
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum 
deployment target of OS X 10.9 [-Wdeprecated]
Undefined symbols for architecture x86_64:

以及关于我使用的功能的一堆其他消息,这里是一个,它们都非常相似:

"_glBegin", referenced from:
  Scene::render() in Scene.cpp.o
  Scene::render() in Input.cpp.o
"_glClear", referenced from:
  Scene::render() in Scene.cpp.o
  Scene::render() in Input.cpp.o
"_glClearColor", referenced from:
  Scene::Scene(Input*) in Scene.cpp.o
  Scene::Scene(Input*) in Input.cpp.o

我不确定我能做些什么(第一次使用openGL& GLUT并第一次使用mac来完成我的课程作业)。

感谢任何帮助,谢谢。

0 个答案:

没有答案