Есть CMake проект, который использует буст и некоторые другие либы, а так же cpack. Всё подключается через vcpkg. Платформа — только убунта.
Каждый раз при запуске приложения, отладки и т.п. происходит полная пересборка проекта. Хотя если собирать проект вручную через командную строку — то пересборки не происходит. К сожалению, пока не получается собрать минимальный пример, который воспроизводил бы проблему.
Возможно кто-то даст хинт, в какую сторону смотреть, чтобы побороть проблему?
Re: [CLion] постоянно делает ребилд, даже если ничего не поменялось
Здравствуйте, SaZ, Вы писали:
SaZ>Доброго дня,
SaZ>Есть CMake проект, который использует буст и некоторые другие либы, а так же cpack. Всё подключается через vcpkg. Платформа — только убунта. SaZ>Каждый раз при запуске приложения, отладки и т.п. происходит полная пересборка проекта. Хотя если собирать проект вручную через командную строку — то пересборки не происходит. К сожалению, пока не получается собрать минимальный пример, который воспроизводил бы проблему.
SaZ>Возможно кто-то даст хинт, в какую сторону смотреть, чтобы побороть проблему?
А что вы имеете в виду под полной пересборкой проекта?
Для Run/Debug конфигураций в CLion по умолчанию прописан шаг Build как Before Task. Его можно удалить в настройках конфигурации. Но вообще, конечно, этот шаг проходит мгновенно, если перестраивать ничего не надо, и по сути ничего не делает.
Re[2]: [CLion] постоянно делает ребилд, даже если ничего не
Здравствуйте, anastasiak2512, Вы писали:
A>А что вы имеете в виду под полной пересборкой проекта? A>Для Run/Debug конфигураций в CLion по умолчанию прописан шаг Build как Before Task. Его можно удалить в настройках конфигурации. Но вообще, конечно, этот шаг проходит мгновенно, если перестраивать ничего не надо, и по сути ничего не делает.
В том то и дело, при запуске "cmake --build" пересборка происходит практически мгновенно, потому что ничего не поменялось. А при нажатии Ctrl+F9 (build) в CLion происходит перекомпиляция всех файлов в проекте.
Update.
В системе у меня установлен cmake 3.16 — с ним всё в порядке. В CLion идёт 3.21 — он триггерит перекомпиляцию.
Регрессия?
Здравствуйте, SaZ, Вы писали:
SaZ>Доброго дня,
SaZ>Есть CMake проект, который использует буст и некоторые другие либы, а так же cpack. Всё подключается через vcpkg. Платформа — только убунта. SaZ>Каждый раз при запуске приложения, отладки и т.п. происходит полная пересборка проекта. Хотя если собирать проект вручную через командную строку — то пересборки не происходит. К сожалению, пока не получается собрать минимальный пример, который воспроизводил бы проблему.
SaZ>Возможно кто-то даст хинт, в какую сторону смотреть, чтобы побороть проблему?
В общем, я так и не понял в чём дело... Удалил из убунты cmake 3.16, поставил последний. Переключил CLion на использование встроенного и всё заработало. Не могу понять в чём было дело.
Re[3]: [CLion] постоянно делает ребилд, даже если ничего не
Здравствуйте, SaZ, Вы писали:
SaZ>Здравствуйте, anastasiak2512, Вы писали:
A>>А что вы имеете в виду под полной пересборкой проекта? A>>Для Run/Debug конфигураций в CLion по умолчанию прописан шаг Build как Before Task. Его можно удалить в настройках конфигурации. Но вообще, конечно, этот шаг проходит мгновенно, если перестраивать ничего не надо, и по сути ничего не делает.
SaZ>В том то и дело, при запуске "cmake --build" пересборка происходит практически мгновенно, потому что ничего не поменялось. А при нажатии Ctrl+F9 (build) в CLion происходит перекомпиляция всех файлов в проекте.
SaZ>Update.
SaZ>В системе у меня установлен cmake 3.16 — с ним всё в порядке. В CLion идёт 3.21 — он триггерит перекомпиляцию. SaZ>Регрессия?
Ну, если только в CMake. Можно попробовать CMake из CLion-а. Наверное при смене версии CMake, он перезапустит сборку, кажется, это логично. Но CLion тут точно не при чем — он просто команду CMake запускает. Ее можно всегда просто руками проверить в терминале.