Problems with Open-Source Downloads read https://www.qt.io/blog/problem-with-open-source-downloads and https://forum.qt.io/post/638946

Ошибка сборки qt 5.9.7



  • Пытаюсь собрать в mingw Qt 5.9.7, но сборка останавливается на вот этом.

    qwindowsmousehandler.cpp:65:16: error: redefinition of 'struct tagTOUCHINPUT'
     typedef struct tagTOUCHINPUT {
                    ^~~~~~~~~~~~~
    In file included from C:/msys64/mingw64/x86_64-w64-mingw32/include/windows.h:72,
                     from ../../../../include/QtCore/../../src/corelib/global/qt_windows.h:64,
                     from ../../../../include/QtCore/qt_windows.h:1,
                     from qtwindowsglobal.h:44,
                     from qwindowsmousehandler.h:43,
                     from qwindowsmousehandler.cpp:40:
    C:/msys64/mingw64/x86_64-w64-mingw32/include/winuser.h:2683:18: note: previous definition of 'struct tagTOUCHINPUT'
       typedef struct tagTOUCHINPUT {
                      ^~~~~~~~~~~~~
    qwindowsmousehandler.cpp:76:3: error: conflicting declaration 'typedef int TOUCHINPUT'
     } TOUCHINPUT, *PTOUCHINPUT;
       ^~~~~~~~~~
    In file included from C:/msys64/mingw64/x86_64-w64-mingw32/include/windows.h:72,
                     from ../../../../include/QtCore/../../src/corelib/global/qt_windows.h:64,
                     from ../../../../include/QtCore/qt_windows.h:1,
                     from qtwindowsglobal.h:44,
                     from qwindowsmousehandler.h:43,
                     from qwindowsmousehandler.cpp:40:
    C:/msys64/mingw64/x86_64-w64-mingw32/include/winuser.h:2694:5: note: previous declaration as 'typedef struct tagTOUCHINPUT TOUCHINPUT'
       } TOUCHINPUT,*PTOUCHINPUT;
         ^~~~~~~~~~
    qwindowsmousehandler.cpp:76:16: error: conflicting declaration 'typedef int* PTOUCHINPUT'
     } TOUCHINPUT, *PTOUCHINPUT;
    


  • Ты случайно нигде не объявлял структуры, функции с одинаковыми названиями?



  • Может я не правильно выразился. Я собираю из исходников Qt (framework Qt, который вышел буквально вчера). Так что я нигде ничего не объявлял.

    gcc version 8.2.0 (Rev3, Built by MSYS2 project)



  • Похоже на баг. Было бы неплохо, если бы вы его зарепортили.
    А какие параметры передаёте в configure?



  • -prefix C:/msys64/mingw64/Qt5.9.7 -platform win32-g++ -opensource -opengl desktop -no-compile-examples -confirm-license -nomake examples -sql-sqlite -sql-odbc -sql-mysql -I C:/msys64/mingw64/usr/local/include/mysql -LC:/msys64/mingw64/usr/local/lib/libmysql.lib -skip qtlocation
    

    Боюсь моих знаний английского языка и багтрекера не хватит, чтобы описать проблему. Меня на русском то языке не поняли. Если можете, то прошу вас зарепортить возможный баг.



  • Я мог бы попробовать воспроизвести у себя, но вы, как я вижу, собираете не с MSVC и не с MinGW из коробки, а с MSYS, плюс ещё библиотека MySQL, у меня этого всего нет для воспроизведения, да тут уже и больше возможностей чему-то пойти не так, так что может даже и не Qt виноват.

    Может стоит попробовать пересобрать чисто 5.9.7 без MySQL для начала (и с "родным" MinGW), чтобы локализовать проблему. Если даже так не сработает, то я попробую на своей Windows машине тоже, а если сработает, то значит что-то в MySQL/MSYS не так.


Log in to reply