标题:有谁用MinGW 4.9.2编译过Debug版本的Qt 5.4.1吗?
作者:johnyork
日期:2015-03-05 09:42
内容:
我在编译Debug版Qt时总是报告错误:D:\myprojects\qt-src\qt-src-5.4.1\qtbase\src\network/access/qhttpnetworkreply.cpp:67: undefined reference to `z_inflateEnd'
./.obj/debug/qhttpnetworkreply.o: In function `ZN24QHttpNetworkReplyPrivate25clearHttpLayerInformationEv':
D:\myprojects\qt-src\qt-src-5.4.1\qtbase\src\network/access/qhttpnetworkreply.cpp:329: undefined reference to `z_inflateEnd'
./.obj/debug/qhttpnetworkreply.o: In function `ZN24QHttpNetworkReplyPrivate23initializeInflateStreamEv':
D:\myprojects\qt-src\qt-src-5.4.1\qtbase\src\network/access/qhttpnetworkreply.cpp:716: undefined reference to `z_inflateInit2_'
./.obj/debug/qhttpnetworkreply.o: In function `ZN24QHttpNetworkReplyPrivate18uncompressBodyDataEP15QByteDataBufferS1_':
D:\myprojects\qt-src\qt-src-5.4.1\qtbase\src\network/access/qhttpnetworkreply.cpp:745: undefined reference to `z_inflate'
D:\myprojects\qt-src\qt-src-5.4.1\qtbase\src\network/access/qhttpnetworkreply.cpp:749: undefined reference to `z_inflateEnd'
D:\myprojects\qt-src\qt-src-5.4.1\qtbase\src\network/access/qhttpnetworkreply.cpp:756: undefined reference to `z_inflateInit2_'
collect2.exe: error: ld returned 1 exit status注1:我使用MSYS2下载的MinGW-w64 32 bit 4.9.2版编译器编译的,configure选项是:./configure -platform win32-g++ -shared -debug -opensource -confirm-license -c++11 -iconv -plugin-sql-sqlite -qt-zlib -qt-libpng -qt-libjpeg -make tools -nomake examples -no-compile-examples -prefix C:/Qt/Qt5.4.1/5.4/mingw492_32注2:同样的编译器编译Release版的Qt似乎没有问题。
#1 [johnyork 03-05 10:52]
好吧,貌似是我装的Perl不是Active Perl的缘故,现在换成官方推荐的Active Perl再试试。
#2 [johnyork 03-05 12:50]
换了,编译还是一样的错误,怎么回事呢?
#3 [johnyork 03-05 14:12]
configure选项中 -shared换成-static就好了,为什么?
#4 [johnyork 03-05 19:15]
MinGW中安了icu也不行,同样的地方报告同样的错误。有谁知道为什么吗?
#5 [彩阳 03-05 23:07]
不要c++11看看?-iconv 也不要看看?