Bug 818348

Summary: Qt Creator can't use mingw toolchain
Product: [Fedora] Fedora Reporter: Hollis Blanchard <hollis>
Component: mingw-qtAssignee: Erik van Pienbroek <erik-fedora>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: drizt72, erik-fedora, fedora, rjones
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-05-03 05:55:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Hollis Blanchard 2012-05-02 20:14:34 UTC
Description of problem:
Qt Creator won't use mingw-qt because /usr/bin/mingw32-qmake-qt4 fails.

Version-Release number of selected component (if applicable):
mingw32-qt-4.8.0-1.fc16.noarch
qt-creator-2.3.1-1.fc16.i686

How reproducible:
Always.

Steps to Reproduce:
1. Start Qt Creator
2. Click Projects in left toolbar.
3. In the Build Settings tab, click Add (build configuration), Clone selected.
4. Next to Qt version, click Manage.
5. Click Add, specify /usr/bin/mingw32-qmake-qt4 in the file selector dialog.
  
Actual results:
Error message appears at the bottom of the window:
"Could not determine the path to the binaries of the Qt installation, maybe the qmake path is wrong?"

Expected results:


Additional info:
See http://stackoverflow.com/questions/6592931/building-for-windows-under-linux-using-qt-creator

Apparently Qt Creator is using 'qmake-qt4 -query' to discover the environment. The mingw32-qmake-qt4 wrapper script adds a '-spec' option before calling the real qmake-qt4. However, qmake-qt4 can't handle being invoked with *both* -spec and -query, so it reports an error and confuses Qt Creator.

Comment 1 Erik van Pienbroek 2012-05-03 05:55:37 UTC
This issue has already been resolved in Fedora 17 and rawhide (which use the new mingw packaging infrastructure and the mingw-w64 toolchain). On Fedora 17 we use a mingw-qt source package which provides a noarch mingw32-qt binary package and an arch-specific mingw32-qt-qmake binary package. On older Fedora versions we've got a mingw32-qt source package which provides a noarch mingw32-qt binary package and a mingw32-qt-qmake source package which provides a noarch mingw32-qt-qmake binary package

It will be quite hard to backport these changes to Fedora 16 as it involves changing a noarch package to an arch-specific package (mingw32-qt-qmake) and involves quite a lot of code duplication (copying over various pieces of the mingw32-qt .spec file). As there are two separate source packages involved this will be difficult to maintain and is easy to break. Therefore I'm not going to fix this issue in older Fedora releases.

Please update to Fedora 17 or use the new mingw-w64 based packages from the testing repository at https://fedoraproject.org/wiki/MinGW/CrossCompilerFramework#Development_and_testing_repository which are compatible with Fedora 16