Wpis z mikrobloga

Staram się zbudować projekt z openGL w clion. Używam ubuntu 16.04LTS

Wydaje mi się, że wszystkie potrzebne biblioteki mam na laptopie:

ls /usr/include/GL
freeglut_ext.h glew.h glu.h glxext.h glxmd.h wglew.h
freeglut.h glext.h glu_mangle.h glx.h glxproto.h
freeglut_std.h gl.h glut.h glxint.h glxtokens.h
glcorearb.h gl_mangle.h glxew.h glx_mangle.h internal

Mój plik CMakeLists wygląda tak: https://pastebin.com/TR3qNYbC

W momencie builda dostaję dużo informacji w stylu
undefined reference to glfwWindowShouldClose'`

Kiedy w pliku .cpp wejdę w metodę (ctrl+b) to widzę normalnie plik .h

Problem jest w buildzie czy brakuje mi nadal jakichś bibliotek?

#linux #cpp #cplusplus #ubuntu #opengl #informatyka #programowanie #naukaprogramowania
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@krasnoludkolo: 1. nagłówki do targetincludedirectories
2. jeśli cmake nie dostarcza findglfw to znajdź bibliotekę w systemie i dodaj ręcznie najpierw ścieżkę folderu zawierającego do CMAKEMODULEPATH, potem findlibrary(GLUT glut) i już możesz się linkować normalnie
3. link
directories out, zamiast tego możesz użyć bezpośrednio makra w targetlinklibraries({OPENGLINCLUDEDIRS}) jeśli działa findpackage na tym
  • Odpowiedz
  • 1
@krasnoludkolo sciezke do nagłówkow wrzucasz do targetincludedirectories razem z wszystkimi innymi. Tutaj zależy jak masz napisane #include do tego w kodzie, bo może są nagłówki luzem, a może z katalogiem nadrzędnym
Do targetlinklibraries ścieżkę do biblioteki możesz wkleić na pale. Jak dalej będzie płakał to pewnie potrzebuje czegoś jeszcze, ale to po komunikatach bledow dojdziesz jakiej biblioteki brakuje
  • Odpowiedz