![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Litkevich Yuriy |
![]() ![]()
Сообщение
#1
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Задумал перевести один из своих проектов на CMake. И никак не пойму, как создать иерархическую систему в стиле pri-файлов, т.е. чтобы были макимально независимые куски. По этому решил тут тему создать. Что-то вроде "копилки решений"
Предположим, что структура исходного проекта, использующего qmake такова:
При этом корневой файл проекта (project.pro) выглядит так:
src.pro:
При этом pri-файлы из 3rdparty выглядят так: firstlib.pri
secondlib.pri
Т.е. получается, что я могу вообще не заглядывать в pri-файлы, мне нужно только подключить их к проекту, а они сами добавят в переменные SOURCES, HEADERS, ... нужные значения. В CMake по идее в каждый каталог нужно поместить CMakeLists.txt. В выше стоящем каталоге в одноимённом файле нужно добавить строчку add_subdirectory( имя катлога ), но как создать аналог глобальных переменных, как у qmake (SOURCES, HEADERS, ...) |
|
|
BRE |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
Собирать статические библиотеки и подключать уже их.
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#3
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
BRE |
![]()
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
Думаю выход не единственный, но я всегда делаю библиотеки.
Статическая библиотека - это архив объектных файлов, ничего навороченного в ней нет. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 15.1.2025, 18:13 |