Bonjour,
Je signale un problème que je rencontre lorsque j'essaye de compiler l'ex05 du tutoriel graphique.
J'utilise Clion pour coder en C++ et souhaiterait ne pas passer par qtcreator, moins confortable à mon goût.
Clion utilise cmake. Voici mon CMakeFiles actuel:
cmake_minimum_required(VERSION 3.15)
project(Toupies_DL)
ADD_DEFINITIONS(-std=c++14 )
set(CMAKE_CXX_STANDARD 14)
find_package(Qt5 COMPONENTS Widgets Core Gui Multimedia REQUIRED)
find_package(Qt5OpenGL REQUIRED)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
add_definitions(${QT_DEFINITIONS})
[...]
add_executable(ex5
${QtFILES}
ex_05/Qt_GL/main_qt_gl.cc)
qt5_use_modules(ex5 Widgets OpenGL)
target_link_libraries(ex5 Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Multimedia)
target_link_libraries(ex5 Qt5::OpenGL)
où QtFILES contient tous les fichiers envoyés dans le zip du tutoriel.
Mais à la compilation, Clion renvoie :
CMakeFiles\ex5.dir/objects.a(glwidget.cc.obj): In function `ZN8GLWidget8resizeGLEii':
C:/Users/lgtle/Desktop/C++/programmes/projet/Toupies-DL/Toupies-DL/ex_05/Qt_GL/glwidget.cc:20: undefined reference to `_imp__glViewport@16'
CMakeFiles\ex5.dir/objects.a(glwidget.cc.obj): In function `ZN8GLWidget7paintGLEv':
C:/Users/lgtle/Desktop/C++/programmes/projet/Toupies-DL/Toupies-DL/ex_05/Qt_GL/glwidget.cc:39: undefined reference to `_imp__glClear@4'
CMakeFiles\ex5.dir/objects.a(vue_opengl.cc.obj): In function `ZN9VueOpenGL4initEv':
C:/Users/lgtle/Desktop/C++/programmes/projet/Toupies-DL/Toupies-DL/ex_05/Qt_GL/vue_opengl.cc:83: undefined reference to `_imp__glEnable@4'
C:/Users/lgtle/Desktop/C++/programmes/projet/Toupies-DL/Toupies-DL/ex_05/Qt_GL/vue_opengl.cc:84: undefined reference to `_imp__glEnable@4'
CMakeFiles\ex5.dir/objects.a(vue_opengl.cc.obj): In function `ZN9VueOpenGL11dessineCubeERK10QMatrix4x4':
C:/Users/lgtle/Desktop/C++/programmes/projet/Toupies-DL/Toupies-DL/ex_05/Qt_GL/vue_opengl.cc:125: undefined reference to `_imp__glBegin@4'
C:/Users/lgtle/Desktop/C++/programmes/projet/Toupies-DL/Toupies-DL/ex_05/Qt_GL/vue_opengl.cc:168: undefined reference to `_imp__glEnd@0'
collect2.exe: error: ld returned 1 exit status
Il ne semble pas identifier les méthodes d'OpenGL. J'ai pourtant copié et placé à proximité les librairies dll nécessaires. Que dois-je faire??
Merci d'avance pour votre aide!
Léonard