CMAKE_PREFIX_PATH не работает должным образом - PullRequest
0 голосов
/ 06 августа 2020

Я компилирую одно и то же приложение Qt / QML на Windows, Linux, MacOS, WebAssembly, iOS и Android. До сих пор я обнаружил, что обнаружение компонентов Qt работает только с Windows, независимо от того, использую ли я его для компиляции версии Windows или кросс-компиляции с Android. Он не работает ни на MacOS, ни на Linux.

Я пытался указать CMAKE_PREFIX_PATH на префикс установки Qt (~ / Qt / 5.15.0 / wasm_32 /), но он продолжает жаловаться на QtConfig.cmake . Единственная альтернатива, которую я нашел для работы, - это передача -DQt5_DIR для поиска QtConfig.cmake, но тогда он будет продолжать запрашивать еще как минимум 10 файлов .cmake, которым мне нужно передавать их пути один за другим, используя переменные _DIR. Таким образом, я бы всегда заканчивал огромной командой, а это основной источник раздражения.

Обратите внимание, что я не хочу устанавливать Qt с помощью apt или любого другого менеджера пакетов. Я хочу использовать только установщик Qt, поскольку он дает мне возможность иметь несколько версий, ориентированных на несколько фреймворков.

Это проблема в Qt? CMake? Ubuntu?

Qt: 5.15.0

CMake: 3.18.0

Ubuntu: 20.04

1 Ответ

0 голосов
/ 07 августа 2020

Теперь я уверен, что нашел его: в цепочках инструментов было следующее: set (ТОЛЬКО CMAKE_FIND_ROOT_PATH_MODE_PACKAGE)

Не похоже, что настройки CMAKE_PREFIX_PATH было достаточно. Мне тоже пришлось это сделать: list (APPEND CMAKE_FIND_ROOT_PATH "~ / Qt / 5.15.0 / wasm_32")

...