Tak, używam freeglut spróbować zrobić kilka openGL rzeczy, ale wciąż otrzymuję błędy mówiące, że odwołania są niezdefiniowane:Łączenie błąd w OpenGL używając freeglut w Clion
CMakeFiles\texture_mapping.dir/objects.a(TextureMapper.cpp.obj): In function `ZN13TextureMapper4initEv':
.../TextureMapper.cpp:20: undefined reference to `[email protected]'
.../TextureMapper.cpp:23: undefined reference to `[email protected]'
.../TextureMapper.cpp:24: undefined reference to `[email protected]'
.../TextureMapper.cpp:25: undefined reference to `[email protected]'
CMakeFiles\texture_mapping.dir/objects.a(TextureMapper.cpp.obj): In function `ZN13TextureMapper7displayEv':
.../TextureMapper.cpp:45: undefined reference to `[email protected]'
...TextureMapper.cpp:48: undefined reference to `[email protected]'
...TextureMapper.cpp:49: undefined reference to `[email protected]'
...TextureMapper.cpp:52: undefined reference to `[email protected]'
...TextureMapper.cpp:53: undefined reference to `[email protected]'
...TextureMapper.cpp:54: undefined reference to `[email protected]'
...TextureMapper.cpp:55: undefined reference to `[email protected]'
...TextureMapper.cpp:58: undefined reference to `[email protected]'
...TextureMapper.cpp:61: undefined reference to `[email protected]'
Używam MinGW z Clion do zrób ten projekt. Myślałem, że wszystko dostałem poprawnie. Przeniosłem odpowiednie pliki do folderu include
w aplikacji MinGW, a także do folderu bin
, a także do folderu lib
. Wtedy, mam to w moim CMakeLists.txt
:
cmake_minimum_required(VERSION 3.3)
project(texture_mapping)
find_package(OpenGL REQUIRED)
find_package(GLUT REQUIRED)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES main.cpp TextureMapper.cpp TextureMapper.h Vertex.h ObjParser.cpp ObjParser.h)
add_executable(texture_mapping ${SOURCE_FILES})
target_link_libraries(texture_mapping libfreeglut.a libfreeglut_static.a)
Biblioteki I związane były tylko pliki bibliotek, które weszły z freeglut.
Więc, czego mi brakuje? CLion nie pokazuje żadnych błędów, zanim zostanie skompilowany. Mogę nawet wejść do funkcji w plikach nagłówkowych dostarczanych przez freeglut. Dlaczego więc te funkcje nie są zdefiniowane w moim programie?
Twój problem ma nic wspólnego z CLion. Chodzi tylko o CMake i twoje środowisko. – Sergey