Я считаю, что причина того, что это не сработало для вас, заключается в том, что ваша команда find_package
предшествовала вашей команде project
в вашем файле CMakeLists.txt
.Если вы убедитесь, что project
- первая команда (после cmake_minimum_required(VERSION <NUM>
), то все переменные CMAKE_SYSTEM_***
будут правильно инициализированы:)
Я действительно наткнулся на этот пост после того, как столкнулся с точно такой же проблемой (см.мой комментарий по первому вопросу).Я попробовал совет, опубликованный j4x, используя команду foreach VARIABLES
, чтобы напечатать все переменные, и по счастливой случайности вставил его после моей команды project
.Я заметил, что CMAKE_SYSTEM_PREFIX_PATH
было разумным значением - тогда я переместил код над командой project
и заметил, что было напечатано гораздо меньше переменных: P CMAKE_SYSTEM_PREFIX_PATH
не было, где его можно увидеть ...
Надеюсьэто работает и для вас!