therecipe / qt

Qt binding for Go (Golang) with support for Windows / macOS / Linux / FreeBSD / Android / iOS / Sailfish OS / Raspberry Pi / AsteroidOS / Ubuntu Touch / JavaScript / WebAssembly
GNU Lesser General Public License v3.0
10.38k stars 736 forks source link

Deploy MacOS to windows_64_shared error #900

Open stephenlyu opened 5 years ago

stephenlyu commented 5 years ago

Hi, I run "qtdeploy build" directly on MacOS, the app is deployed. But when I run "qtdeploy -docker -debug build windows_64_shared", it failed. The following is the error:

core-minimal.cpp: In function 'QtCore_PackedString QLocale_ToString3(void, long int)': core-minimal.cpp:2348:71: error: call of overloaded 'toString(long int&)' is ambiguous return ({ QByteArray teea9c2 = static_cast<QLocale>(ptr)->toString(i).toUtf8(); QtCore_PackedString { const_cast<char*>(teea9c2.prepend("WHITESPACE").constData()+10), teea9c2.size()-10 }; });

Before I run qtdeploy with docker option, I've checked the docker image version.

docker pull therecipe/qt:windows_64_shared windows_64_shared: Pulling from therecipe/qt Digest: sha256:c8ba46417fb28b785d249131a7a9fb06d3caa575f664d22842e6a849a7b3ba0d Status: Image is up to date for therecipe/qt:windows_64_shared

Could you give me some help? Thanks a lot.

amlwwalker commented 5 years ago

Not that it answers your question, but does the static image for docker/Windows work for you?

dballard commented 5 years ago

I just had this problem when I updated my build images from ~6month old ones to the june ones for windows_64_shared and can confirm switching to windows_64_static fixed it!

cwtch.im/ui/go/the
# github.com/therecipe/qt/core
core-minimal.cpp: In function 'QtCore_PackedString QLocale_ToString3(void*, long int)':
core-minimal.cpp:1892:71: error: call of overloaded 'toString(long int&)' is ambiguous
  return ({ QByteArray teea9c2 = static_cast<QLocale*>(ptr)->toString(i).toUtf8(); QtCore_PackedString { const_cast<char*>(teea9c2.prepend("WHITESPACE").constData()+10), teea9c2.size()-10 }; });
                                                                       ^
In file included from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qtextstream.h:46:0,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qdebug.h:49,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qcborcommon.h:45,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qcborvalue.h:45,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/QCborValue:1,
                 from core-minimal.cpp:11:
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:983:13: note: candidate: QString QLocale::toString(qlonglong) const
     QString toString(qlonglong i) const;
             ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:984:13: note: candidate: QString QLocale::toString(qulonglong) const
     QString toString(qulonglong i) const;
             ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1101:16: note: candidate: QString QLocale::toString(short int) const
 inline QString QLocale::toString(short i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1103:16: note: candidate: QString QLocale::toString(ushort) const
 inline QString QLocale::toString(ushort i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1105:16: note: candidate: QString QLocale::toString(int) const
 inline QString QLocale::toString(int i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1107:16: note: candidate: QString QLocale::toString(uint) const
 inline QString QLocale::toString(uint i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:989:13: note: candidate: QString QLocale::toString(double, char, int) const
     QString toString(double i, char f = 'g', int prec = 6) const;
             ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1109:16: note: candidate: QString QLocale::toString(float, char, int) const
 inline QString QLocale::toString(float i, char f, int prec) const
                ^
core-minimal.cpp: In function 'QtCore_PackedString QLocale_ToString4(void*, long unsigned int)':
core-minimal.cpp:1897:71: error: call of overloaded 'toString(long unsigned int&)' is ambiguous
  return ({ QByteArray teea9c2 = static_cast<QLocale*>(ptr)->toString(i).toUtf8(); QtCore_PackedString { const_cast<char*>(teea9c2.prepend("WHITESPACE").constData()+10), teea9c2.size()-10 }; });
                                                                       ^
In file included from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qtextstream.h:46:0,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qdebug.h:49,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qcborcommon.h:45,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qcborvalue.h:45,
                 from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/QCborValue:1,
                 from core-minimal.cpp:11:
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:983:13: note: candidate: QString QLocale::toString(qlonglong) const
     QString toString(qlonglong i) const;
             ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:984:13: note: candidate: QString QLocale::toString(qulonglong) const
     QString toString(qulonglong i) const;
             ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1101:16: note: candidate: QString QLocale::toString(short int) const
 inline QString QLocale::toString(short i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1103:16: note: candidate: QString QLocale::toString(ushort) const
 inline QString QLocale::toString(ushort i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1105:16: note: candidate: QString QLocale::toString(int) const
 inline QString QLocale::toString(int i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1107:16: note: candidate: QString QLocale::toString(uint) const
 inline QString QLocale::toString(uint i) const
                ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:989:13: note: candidate: QString QLocale::toString(double, char, int) const
     QString toString(double i, char f = 'g', int prec = 6) const;
             ^
/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/include/QtCore/qlocale.h:1109:16: note: candidate: QString QLocale::toString(float, char, int) const
 inline QString QLocale::toString(float i, char f, int prec) const
therecipe commented 5 years ago

Hey

Sorry for the trouble, I couldn't update the shared windows images to 5.13 back then because the shared build of Qt maintained by MXE (the version that is used for the shared windows images) didn't properly work at that time.

But it should be fixed now with https://github.com/therecipe/qt/commit/37b08fcec7033f4e3ba23a8ed5e1320e277d094d#diff-1fe78692b8154d9893c93427611e87c6