Ответ 1
Я думаю, что ваш лучший выбор - действительно удалить кеш и воссоздать его. Фактически, я склонен идти дальше и удалять все дерево построения, если мне нужно переместить источник, но это, вероятно, слишком велико.
Файл CMakeCache.txt можно редактировать с помощью графического интерфейса CMake или вручную, если вы уверены, что делаете, но я считаю, что это обычно не стоит усилий по сравнению с повторным запуском cmake с нуля. Я думаю, если запуск CMake занимает значительное количество времени (например, если вы используете ExternalProject_Add
, который может включать загрузку и создание стороннего ресурса), может быть предпочтительнее изменить CMakeCache.txt.
В этой статье приводится более подробная информация о файле CMakeCache.txt и его редактировании. В частности, он говорит:
Основной причиной редактирования кеша было бы дать CMake расположение родной библиотеки, такой как JPEG, или остановить ее от использования родной библиотеки и использовать версию библиотеки в исходном дереве.
CMake не будет изменять существующую запись в самом файле кэша. Если ваши файлы CMakeLists.txt значительно меняются, вам нужно будет удалить соответствующие записи из файла кеша. Если вы еще не отредактировали файл кэша вручную, вы можете просто удалить его перед повторным запуском CMake.