Глядя на свое сообщение, вы, кажется, нигде не добавляете 'codepart1folder' во включаемые элементы.Как вы включаете codepart1.hpp как:
#include <codepart1.hpp>
#include "codepart1folder/codepart1.hpp"
Я не думаю, что существует стандартный приемлемый способ структурирования проектов cmake.Я посмотрел на кучу репозиториев cmake, и они, как правило, имеют различия.Лично я делаю следующее:
-project
CMakeLists.txt
-build
-cmake
OptionalCmakeModule.cmake
-src
-Main
Main.cpp
Main.hpp
-DataStructs
SomeTree.hpp
SomeObject.hpp
-Debug
Debug.hpp
-UI
Window.hpp
Window.cpp
По сути, это создает дамп всего исходного кода в 1 каталог, а затем вы выполняете сборку вне исходного кода с помощью: ' mkdir build && cd build && cmake .. &&сделайте 'в корневой папке проектов.
Если у вас есть отдельные библиотеки libs как часть вашего проекта, то вам может потребоваться отдельный каталог libs с другой подпапкой для вашей конкретной библиотеки.
У меня есть несколько моих репозиториев: https://github.com/dcbishop/, если вы хотите посмотреть файлы CMakeLists.txt.
Основные проблемы со структурой моего проекта заключаются в том, что я использую FILE_GLOB, который, по-видимому, 'неправильный способ действий (если вы добавляете файлы после запуска ' cmake .. ', тогда они не будут обнаружены, если вы выполните ' make ').Я не понял, каков «правильный» способ сделать это (из того, что я вижу, это сохранение отдельного списка файлов), я также использую только 1 файл CMakeLists.txt.
Некоторые проекты такжевыберите разделить свои файлы cpp и hpp на отдельные каталоги.Таким образом, у вас будут папки include и src (по крайней мере, для hpp-файлов, которые предназначены для внешнего использования).Я думаю, что это будет в основном для проектов, которые в основном крупные библиотеки.Также значительно упростит установку файлов заголовков.