Установить переменную с помощью кеша принудительного кеша не обновляет переменную cmakeLinux

Ответить Пред. темаСлед. тема
Гость
 Установить переменную с помощью кеша принудительного кеша не обновляет переменную cmake

Сообщение Гость »


Я пытаюсь обновить переменную cmake на основе значения переменной env, если она задана заранее. И я также кеширую эту переменную. Однако в cmake он не обновляется должным образом, но в кеше я вижу обновленное значение.
Вот мой тестовый файл CMakeLists.txt
Я установил переменную evirnoment

Код: Выделить всё

compiler_verion=clang15

Код: Выделить всё

cmake_minimum_required(VERSION 3.26)
project(test)

if(NOT compiler_version)
set(compiler_version "gcc")
message("++++++++++++++++++++++++++++++ default ${compiler_version}")
endif()

if(NOT "$ENV{compiler_version}" STREQUAL "")
set(compiler_version $ENV{compiler_version} CACHE STRING "which compiler to use..." FORCE)
message("++++++++++++++++++++++++++ env compiler_version : $ENV{compiler_version} cmake_compiler_version  ${compiler_version} ++++++++++++++++++++++++++++")
elseif(NOT compiler_version)
set(compiler_version "gcc" CACHE STRING "which compiler to use..." FORCE)
message("++++++++++++++++++++++++++++++ else if ${compiler_version}")
else()
set(compiler_version ${compiler_version} CACHE STRING "which compiler to use..." FORCE)
message("++++++++++++++++++++++++++++++ else ${compiler_version}")
endif()
Я запускаю команду

Код: Выделить всё

cmake ..
из папки сборки.
Вот фактический результат.

Код: Выделить всё

-- The C compiler identification is GNU 8.5.0
-- The CXX compiler identification is GNU 8.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
++++++++++++++++++++++++++++++ default gcc
++++++++++++++++++++++++++ env compiler_verion : clang15 cmake_compiler_version  gcc ++++++++++++++++++++++++++++
-- Configuring done (0.6s)
-- Generating done (0.0s)
-- Build files have been written to: /test/buil
Моя проблема связана с этим.

Код: Выделить всё

++++++++++++++++++++++++++ env compiler_version : clang15 cmake_compiler_version  gcc 
Почему не устанавливается

Код: Выделить всё

compiler_version дляclang15
?
Если я перезапущу это, когда файл кэша уже доступен, он будет работать как положено.

Код: Выделить всё

++++++++++++++++++++++++++ env compiler_verion : clang15 cmake_compiler_version  clang15 ++++++++++++++++++++++++++++
-- Configuring done (0.0s)
-- Generating done (0.0s)
Am I missing something?
I am using cmake version 3.26 on linux platform.


Источник: https://stackoverflow.com/questions/781 ... e-variable
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Компонент Vue.js обновляет одну переменную состояния хранилища и не обновляет другую.
    Гость » » в форуме Javascript
    0 Ответы
    13 Просмотры
    Последнее сообщение Гость
  • Laravel 5.4 - php artisancache:clear не очищает файлы кеша при использовании драйвера кеша «файл»
    Anonymous » » в форуме Php
    0 Ответы
    0 Просмотры
    Последнее сообщение Anonymous
  • Обнаружение принудительного закрытия/завершения HKWorkoutSession в фоновом режиме
    Anonymous » » в форуме IOS
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Трекбар Python не обновляет переменную
    Гость » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Гость
  • SwiftUI .onAppear не обновляет переменную @State возвращаемым значением
    Anonymous » » в форуме IOS
    0 Ответы
    0 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Linux»