Red Hat Bugzilla – Bug 813064
MinGW Qt application doesn't linked with openssl at runtime
Last modified: 2012-05-11 06:32:58 EDT
Created attachment 577807 [details]
mingw qt ssl test case
I can't load any https in my qt application compiled with MinGW Qt. I've learned this problem and have wrotten sample app to test it. See in attachment.
First compile for Linux
cp release/mingw-qt-ssl-testcase.exe to_your_windows_folder
also put in your windows folder libcrypto-10.dll libgcc_s_sjlj-1.dll libpng14-14.dll libssl-10.dll libstdc++-6.dll QtCore4.dll QtGui4.dll QtNetwork4.dll zlib1.dll from /usr/i686-pc-mingw32/sys-root/mingw/bin.
and start mingw-qt-ssl-testcase.exe under your Windows.
I've rebuilt mingw32-qt package for myself with -openssl-linked instead of -openssl configure option. After this test app works with ssl ... but it can't get certificates.
Does http://koji.fedoraproject.org/koji/taskinfo?taskID=4005347 resolve the problem for you? (This package was built for Fedora 16)
A package for Fedora 15 is currently building: http://koji.fedoraproject.org/koji/taskinfo?taskID=4005785
Yeah, it turned out an additional patch was needed for Fedora 15. A new one is being uploaded now to the koji builders
Here's one for Fedora 15: http://koji.fedoraproject.org/koji/taskinfo?taskID=4006135
$ sudo rpm -Uvh mingw32-qt-4.8.1-1.fc15.noarch.rpm
[sudo] password for taurus:
error: Failed dependencies:
mingw32-qt-qmake = 4.8.1 is needed by mingw32-qt-4.8.1-1.fc15.noarch
Here's the corresponding mingw32-qt-qmake package: http://koji.fedoraproject.org/koji/taskinfo?taskID=4008567
[taurus@lix mingw-qt-ssl-testcase]$ mingw32-qmake-qt4
[taurus@lix mingw-qt-ssl-testcase]$ make
make -f Makefile.Release
make: Entering directory `/home/taurus/Downloads/mingw-qt-ssl-testcase'
i686-pc-mingw32-g++ -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 --param=ssp-buffer-size=4 -mms-bitfields -O2 -fexceptions -mthreads -Wall -fno-rtti -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NO_DYNAMIC_CAST -I'/usr/i686-pc-mingw32/sys-root/mingw/include/QtCore' -I'/usr/i686-pc-mingw32/sys-root/mingw/include/QtNetwork' -I'/usr/i686-pc-mingw32/sys-root/mingw/include/QtGui' -I'/usr/i686-pc-mingw32/sys-root/mingw/include' -I'/usr/i686-pc-mingw32/sys-root/mingw/include/ActiveQt' -I'release' -I'.' -I'/usr/lib/qt4/mkspecs/win32-g++-cross' -o release/moc_mainwindow.o release/moc_mainwindow.cpp
release/moc_mainwindow.cpp:14:2: error: #error "This file was generated using the moc from 4.7.4. It"
release/moc_mainwindow.cpp:15:2: error: #error "cannot be used with the include files from this version of Qt."
release/moc_mainwindow.cpp:16:2: error: #error "(The moc has changed too much.)"
make: *** [release/moc_mainwindow.o] Error 1
make: Leaving directory `/home/taurus/Downloads/mingw-qt-ssl-testcase'
make: *** [release] Error 2
I was already afraid of this..Qt 4.8.1 is too new for Fedora 15 (which bundles a native copy of Qt 4.7.4). This specific problem has already been resolved in Fedora 17, but can't be backported to older Fedora versions. I'll try to backport the SSL patch to Qt 4.7.4, but this will probably take another couple of hours
My apologies for the delay.
Here are suitable packages for Fedora 15:
mingw32-qt-qmake: You can use the one in the Fedora 15 updates repository
You may need to perform a 'yum downgrade mingw32-qt mingw32-qt-qmake' first
Nice! It works.
I'll push updated packages to Fedora 15 and 16 (in Fedora 17 and rawhide this issue was already resolved)
mingw32-qt-4.7.4-2.fc15 has been submitted as an update for Fedora 15.
mingw32-qt-4.8.1-1.fc16,mingw32-qt-qmake-4.8.1-1.fc16 has been submitted as an update for Fedora 16.
Package mingw32-qt-4.8.1-1.fc16, mingw32-qt-qmake-4.8.1-1.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing mingw32-qt-4.8.1-1.fc16 mingw32-qt-qmake-4.8.1-1.fc16'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).
mingw32-qt-4.7.4-2.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.
mingw32-qt-4.8.1-1.fc16, mingw32-qt-qmake-4.8.1-1.fc16 has been pushed to the Fedora 16 stable repository. If problems still persist, please make note of it in this bug report.