Arrow
Arrow20. Mai 2017 15:09

qmake

qmake, Qt, Qt Creator

Пытаюсь скормить Qt Creator (Qt 5.9 beta) свой компилятор.

Оказалось, то для комлектов в настройках нужно указать qmake.exe который идет для этого компилятора.

Проблема в том, что его нет.

Вопрос в следующем: Возможно ли перенастроить утилиту qmake на новый компилятор и как это сделать? Или нужно писать свою утилиту?

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Stabiles Hosting des sozialen Netzwerks EVILEG. Wir empfehlen VDS-Hosting für Django-Projekte.

Magst du es? In sozialen Netzwerken teilen!

14
Evgenii Legotckoi
  • 20. Mai 2017 23:47
  • Die Antwort wurde als Lösung markiert.

Докачать компилятор для версии Qt 5.9, там должен быть нужный qmake, посмотрите в Maintenance Tool, всё ли установлено.

Или нужно писать свою утилиту?

Это как понимать?

А подождать немного не судьба? Финальный релиз версии Qt 5.9 31-го мая должен быть.

    Arrow
    • 21. Mai 2017 09:07

    А что в релизе будет поддержка MinGw 64 bit? И где под него qmake искать?

      Arrow
      • 21. Mai 2017 09:15
      Это как понимать?
      Писать свой qmake или правильно задавать ему опции какой компилятор использовать и т.д. Если открыть в Qt Creator профили Qt, то там можно увидеть настройки - опции.

        Evgenii Legotckoi
        • 21. Mai 2017 11:14

        А вот это уже интересный вопрос. Не думаю, что будут MinGW 64 bit добавлять. Он по-моему никогда и не был в приоритете, если учесть, что есть MSVC. А если учесть, что тот же самый WebEngine не поддерживается и MinGW 32 bit, то и смысла-то особого нет работать с MinGW на мой взгляд. Для каких целей необходим Вам именно MinGW 64 bit?

        Ну а так да. Вручную комплекты нужно настраивать, но думаю, что с MinGW 64 должен быть и qmake. Могу предложить, только поискать там, где брали MinGW 64.

          Arrow
          • 21. Mai 2017 14:37

          Спасибо! Попробую поискать.

            Arrow
            • 22. Mai 2017 10:26

            Нашел qmake. Он идет в комплекте с MSYS2 и выкачивается при установке toolchain для qt.

            Остался последний вопрос по теме: Как указать в какую папку после сборки кидать 64 bit исполняемый файл?

            Писал так, но кидает в туже папку, что и 32 (заменяет его):
            CONFIG(debug, debug|release) {
                # debug
            } else {
                # release
                win32: {
                    # Папка для release-версии программы
                    DESTDIR = $${_PRO_FILE_PWD_}/win32
                }
                win64: {
                    # Папка для release-версии программы
                    DESTDIR = $${_PRO_FILE_PWD_}/win64
                }
                unix: {
                    # Папка для release-версии программы
                    DESTDIR = $${_PRO_FILE_PWD_}/linux
                }
            }
              Evgenii Legotckoi
              • 23. Mai 2017 01:18

              Вообще, двоеточия не ставят, когда используют фигурные скобки.

              CONFIG(debug, debug|release) {
                  # debug
              } else {
                  # release
                  win32 {
                      # Папка для release-версии программы
                      DESTDIR = $${_PRO_FILE_PWD_}/win32
                  }
                  win64 {
                      # Папка для release-версии программы
                      DESTDIR = $${_PRO_FILE_PWD_}/win64
                  }
                  unix {
                      # Папка для release-версии программы
                      DESTDIR = $${_PRO_FILE_PWD_}/linux
                  }
              }
                Arrow
                • 23. Mai 2017 02:16

                Результат тот же.

                  Evgenii Legotckoi
                  • 23. Mai 2017 02:54

                  Я вот не уверен до конца, а вот эта переменная _PRO_FILE_PWD_ вообще даёт нужный результат? Может qmake ошибочный путь получает?

                  Так, а ещё фигурные скобки у _PRO_FILE_PWD_ тоже лишние

                  CONFIG(debug, debug|release) {
                      # debug
                  } else {
                      # release
                      win32 {
                          # Папка для release-версии программы
                          DESTDIR = $$_PRO_FILE_PWD_/win32
                      }
                      win64 {
                          # Папка для release-версии программы
                          DESTDIR = $$_PRO_FILE_PWD_/win64
                      }
                      unix {
                          # Папка для release-версии программы
                          DESTDIR = $$_PRO_FILE_PWD_/linux
                      }
                  }
                    Arrow
                    • 23. Mai 2017 03:18

                    Проверил - без изменений.

                    Версия 32 bit исполняемого файла ложится в папкуwin32, в Linux тоже все отлично.

                    Проблема только с тем, что почему-то версия 64 bit попадает в папку win32, а не win64.

                      Evgenii Legotckoi
                      • 23. Mai 2017 03:27

                      Возможно, что win64 не очень хорошо работает, если вообще работает. Я наткнулся вот на такой вариант решения проблемы:

                      win32 {
                      
                          ## Windows common build here
                      
                          !contains(QMAKE_TARGET.arch, x86_64) {
                              message("x86 build")
                      
                              ## Windows x86 (32bit) specific build here
                      
                          } else {
                              message("x86_64 build")
                      
                              ## Windows x64 (64bit) specific build here
                      
                          }
                      }
                        Arrow
                        • 23. Mai 2017 03:41

                        Странно по сообщениям выдает, что у меня компилирутся 32 bit версия (x86 build).

                        Компилятор опознан правильно и в ABI сам определилил x86-windows-msys-pre-64bit и исполняемый файл создает 64 bit.

                          Evgenii Legotckoi
                          • 24. Mai 2017 03:20

                          Видимо, что qmake не совсем понимает, к какой архитектуре относится MinGW-64.

                            Arrow
                            • 24. Mai 2017 04:09

                            Похоже на то! Спасибо.

                              Kommentare

                              Nur autorisierte Benutzer können Kommentare posten.
                              Bitte Anmelden oder Registrieren
                              Letzte Kommentare
                              A
                              ALO1ZE19. Oktober 2024 08:19
                              Fb3-Dateileser auf Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
                              ИМ
                              Игорь Максимов5. Oktober 2024 07:51
                              Django – Lektion 064. So schreiben Sie eine Python-Markdown-Erweiterung Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
                              d
                              dblas55. Juli 2024 11:02
                              QML - Lektion 016. SQLite-Datenbank und das Arbeiten damit in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
                              k
                              kmssr8. Februar 2024 18:43
                              Qt Linux - Lektion 001. Autorun Qt-Anwendung unter Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
                              Qt WinAPI - Lektion 007. Arbeiten mit ICMP-Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
                              Jetzt im Forum diskutieren
                              J
                              JacobFib17. Oktober 2024 03:27
                              добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
                              JW
                              Jhon Wick1. Oktober 2024 15:52
                              Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…
                              КГ
                              Кирилл Гусарев27. September 2024 09:09
                              Не запускается программа на Qt: точка входа в процедуру не найдена в библиотеке DLL Написал программу на C++ Qt в Qt Creator, сбилдил Release с помощью MinGW 64-bit, бинарнику напихал dll-ки с помощью windeployqt.exe. При попытке запуска моей сбилженной программы выдаёт три оши…
                              F
                              Fynjy22. Juli 2024 04:15
                              при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …

                              Folgen Sie uns in sozialen Netzwerken