Qt5 [make -snap] не компилируется должным образом: процесс "/ usr / bin / snap" завершился с кодом 1 - PullRequest
0 голосов
/ 10 января 2020

Я скопировал / вставил папку проекта Qt5 с компьютера на другой компьютер. Они оба Ubuntu 18.04.

Одна и та же версия Qt5 и одинаковые библиотеки / зависимости. На новом компьютере у меня есть CMake 3.10.2, но я не помню версию CMake, которая была у меня на предыдущем. (Возможно CMake 3.8).

Как только я открою Qt5 и открою папку, содержащую файл CMakeLists.txt, и нажму на нее, я получу следующий результат из вывода:

08:02:22: Running steps for project newcam-proc...     
08:02:22: Persisting CMake state...  
08:02:22: Starting: "/usr/bin/snap" --build . --target all error: unknown flag `build' 
08:02:22: The process "/usr/bin/snap" exited with code 1. 
Error while building/deploying project myProject (kit: Desktop Qt 5.12.5 GCC 64bit) 
The kit Desktop Qt 5.12.5 GCC 64bit has configuration issues which might be the root cause for this problem. When executing step "CMake Build" 
08:02:22: Elapsed time: 00:00.

И ниже General Message я получаю:

Project ERROR: You need to set the ANDROID_NDK_ROOT environment variable to point to your Android NDK.
Could not read qmake configuration file /home/emanuele/Qt/5.12.5/android_armv7/mkspecs/android-clang/qmake.conf.
Project ERROR: You need to set the ANDROID_NDK_ROOT environment variable to point to your Android NDK.
Could not read qmake configuration file /home/emanuele/Qt/5.12.5/android_x86/mkspecs/android-clang/qmake.conf.
Running /usr/bin/snap /home/emanuele/Desktop/myProject -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_CXX_COMPILER:STRING=/usr/bin/g++ -DCMAKE_C_COMPILER:STRING=/usr/bin/gcc -DCMAKE_PREFIX_PATH:STRING=/home/emanuele/Qt/5.12.5/gcc_64 -DQT_QMAKE_EXECUTABLE:STRING=/home/emanuele/Qt/5.12.5/gcc_64/bin/qmake in /tmp/QtCreator-vlHbHY/qtc-cmake-LvUefYdh.
error: unknown command "/home/emanuele/Desktop/myProject", see 'snap help'.
CMake process exited with exit code 1.

Мне никогда не приходилось использовать Android NDK в моем предыдущем проекте, и я не должен был его устанавливать. И я не уверен, почему на новой машине показывается это сообщение.

Кроме того, кажется, что пытается использовать snap вместо обычного make.

Я не уверен в том, что происходит и почему.

То, что я пробовал до сих пор:

1) Единственное, что пришло ко мне мы хотели попробовать создать небольшое приложение-пример и посмотреть, работает ли оно, оно действительно работает правильно и не выдает ошибку, как показано ниже:

08:16:00: Running steps for project untitled...
08:16:00: Configuration unchanged, skipping qmake step.
08:16:00: Starting: "/usr/bin/make" -j8
make: Nothing to be done for 'first'.
08:16:00: The process "/usr/bin/make" exited normally.
08:16:00: Elapsed time: 00:00.

Кажется, что проект, который я скопировал / вставил, использует snap и если я создаю новый проект, такой как Qt Widget application, он на самом деле использует make, правильно выходя из вывода.

1 Ответ

1 голос
/ 10 января 2020

Флаги --build . --target all - это флаги, которые вы обычно видите переданными в исполняемый файл cmake, а не в snap. Это намекает на то, что ваша среда CMake неправильно настроена в IDE на вашем новом компьютере. Я предлагаю следовать инструкциям по установке QtCreator CMake здесь , чтобы помочь настроить его:

Чтобы указать пути к исполняемым файлам CMake:

  1. Выбрать Инструменты > Параметры > Наборы > CMake > Добавить .
  2. В Имя * В поле 1025 * укажите имя инструмента.
  3. В поле Path укажите путь к исполняемому файлу CMake.
  4. Выберите Auto-create построить каталоги флажок для автоматического создания каталогов сборки для проектов CMake.
  5. Выберите Применить , чтобы сохранить изменения.
...