Подтвердить что ты не робот

CMAKE_TOOLCHAIN_FILE не использовался проектом

Cmake дает это предупреждение при создании стороннего script:

CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_TOOLCHAIN_FILE

Есть ли общие советы, что мне нужно проверить или как это исправить?

4b9b3361

Ответ 1

Это стандартное предупреждение дает вам, когда вы предоставляете ему параметр командной строки, который он не использует. Это дает -DFOO=bar cmake, когда CMakeLists.txt не использует переменную FOO.

Теперь, это немного особый случай: CMAKE_TOOLCHAIN_FILE используется CMake при первой настройке вашей сборки, но поскольку вы не можете изменить инструментальную цепочку для уже настроенной сборки, она игнорируется каждый раз, таким образом, предупреждение.

Как сказал @Answeror, вы можете смело игнорировать предупреждение, но если это вас действительно беспокоит, вы можете скрыть его, указав --no-warn-unused-cli на cmake.

Ответ 2

Если вы получили это сообщение с CLion после того, как вы установили -DCMAKE_TOOLCHAIN_FILE=xxx, вы захотите удалить все каталоги сборки CMake.

Do

Tools-> CMake -> Show Generated CMake Files in File Manager

затем удалите все каталоги сборки. Тогда do

Tools-> CMake -> Reload the CMake Project

Как только вы это сделаете, вы все равно получите предупреждение, но, по крайней мере, это будет наблюдаться при первом запуске cmake.

Ответ 3

То же самое произошло здесь, как указывал @js, это обычно означает, что вы создаете реликты cmake из прошлой конфигурации.

Сделайте rm -rf CMakeCache.txt CMakeFiles/, и сообщение исчезнет при первом запуске cmake -DCMAKE_TOOLCHAIN_FILE=foo.cmake .. Во второй раз они снова будут там, а @Guilaume ответил, что хорошо.

P.S.: Сначала я сделал git clean --force, но поскольку эти файлы обычно находятся в .gitignore, это не reset сборка.