Wpis z mikrobloga

Przygotowuje cmake'a od podstaw pierwszy raz i mam pewien problem.
Gdy w kodzie używam dyrektywy include i chcę podać ścieżkę absolutną do innego pliku to nie znajduje mi folderu.
Jak ustawić folder początkowy na ten w którym jest CMakeLists?

Przykład:
W folderze "projekt" mam CMakeLists.txt i tam zrobiłem git init.

#include "../folder/Klasa.hpp" - działa
#include "/home/desktop/projekt/folder/Klasa.hpp" - działa

Problem jest z tym.
#include "folder/Klasa.hpp" - nie działa

#cpp
  • 5
  • Odpowiedz
@Malkof: można to zrobić include_directories. Ja rozdzielam cpp i hpp do dwóch osobnych folderów: src i include (w obu jest zachowana ta sama struktura katalogów). Potem:

include_directories("${PROJECT_SOURCE_DIR}/include")
  • Odpowiedz
@Malkof: Przy include_directories nagłówki będą widoczne w każdym miejsu danrgo CMakeLists. Jak wyżej - prawdopodbnie chcesz użyć target_include_directories.
  • Odpowiedz