cmake, несколько вопросов - PullRequest
0 голосов
/ 29 июля 2011

Я новичок в cmake. Есть ли хорошие уроки, которые углубляются в этот вопрос? Есть какие-нибудь статьи о "хороших практиках" с помощью cmake? Есть ли здесь хорошие обзоры обо всех командах cmake и о том, что они делают? Оригинальные документы по cmake, на мой взгляд, довольно запутанные и запутанные ...

Теперь для чего-то более конкретного: Насколько я узнал, вы должны указывать cmake каждый исходный файл (.cpp), который должен быть скомпилирован. Разве нельзя просто сказать «просто скомпилировать все, что вы найдете в папке / src» (как вы можете просто определить папку включения без havinf для определения каждого отдельного файла .h)?

Как лучше всего сказать, чтобы cmake также компилировал файлы, которых нет в / src dir? У меня есть другая папка для внешнего исходного кода, которая также имеет подкаталоги и все. Должен ли я (снова ..) записывать каждый отдельный файл .cpp в скрипт cmake, чтобы он знал, что внешний код тоже должен быть скомпилирован?

В основном я ищу самый быстрый и лучший способ добавить новые исходные / заголовочные файлы в проект без необходимости постоянно корректировать файлы cmake.

1 Ответ

3 голосов
/ 29 июля 2011

Вы можете просто глобус *.cpp *.h и т. Д., Но если ваш список файлов изменится, CMake не заметит, если вы не коснетесь файла CMakeLists.txt.

Лучше всего постоянно корректировать ваши файлы CMake. Вы получите последовательное поведение, если вы перечислите файлы, что действительно важно.

Это действительно не так много работы на практике, правда.

Использование файла CMakeLists.txt для каждого каталога и использование add_subdirectory обычно является наиболее простым способом управления им. Таким образом, вы не имеете дело с путями, выходящими за пределы текущей и дочерней областей.

Вот учебник по CMake

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...