Cross-building broken in qt 5.2

Bug #1294186 reported by Michał Sawicz on 2014-03-18
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cmake (Ubuntu)
High
Unassigned
qtbase-opensource-src (Ubuntu)
High
Unassigned

Bug Description

Since the 5.2 upgrade, cross-builds with CMake fail as following:

----8<----

CMake Error at /usr/lib/arm-linux-gnueabihf/cmake/Qt5Core/Qt5CoreConfig.cmake:27 (message):
  The imported target "Qt5::Core" references the file

     "/usr/lib/arm-linux-gnueabihf/qt5//mkspecs/linux-g++"

  but this file does not exist. Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/lib/arm-linux-gnueabihf/cmake/Qt5Core/Qt5CoreConfigExtras.cmake"

  but not all the files it references.

---->8----

The reason seems to be that the mkspecs files are new in 5.2, and are looked up for in host multiarch dir instead of build.

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: qtbase5-dev 5.2.1+dfsg-1ubuntu9
ProcVersionSignature: Ubuntu 3.13.0-18.38-generic 3.13.6
Uname: Linux 3.13.0-18-generic x86_64
NonfreeKernelModules: nvidia wl
ApportVersion: 2.13.3-0ubuntu1
Architecture: amd64
CurrentDesktop: Unity
Date: Tue Mar 18 16:41:40 2014
SourcePackage: qtbase-opensource-src
UpgradeStatus: No upgrade log present (probably fresh install)

Related branches

Michał Sawicz (saviq) wrote :
Iain Lane (laney) wrote :

The first fix is to make qt5-qmake M-A: Same. That's in the landing-001 PPA currently.

Then you discover that cmake is looking for uic and some other tools in the host arch location instead of the build arch one. That can be fixed in cmake by extending the MultiArchCross.cmake file to cover these files too.

Iain Lane (laney) wrote :
Changed in qtbase-opensource-src (Ubuntu):
status: New → Triaged
Changed in cmake (Ubuntu):
status: New → Triaged
importance: Undecided → High
Changed in qtbase-opensource-src (Ubuntu):
importance: Undecided → High
tags: added: patch
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package cmake - 2.8.12.2-0ubuntu3

---------------
cmake (2.8.12.2-0ubuntu3) trusty; urgency=medium

  [ Iain Lane ]
  * MultiArchCross.cmake: Look for uic and qdbus{cpp2xml,xml2cpp} in
    /usr/lib/$DEB_BUILD_MULTIARCH/qt5/bin/. (LP: #1294186)
 -- Dimitri John Ledkov <email address hidden> Wed, 19 Mar 2014 11:33:40 +0000

Changed in cmake (Ubuntu):
status: Triaged → Fix Released
Timo Jyrinki (timo-jyrinki) wrote :

This bug was fixed in the package qtbase-opensource-src - 5.2.1+dfsg-1ubuntu10

---------------
qtbase-opensource-src (5.2.1+dfsg-1ubuntu10) trusty; urgency=medium

  * Make qt5-qmake Multi-Arch: same since it moved from shipping files in
    /usr/share to /usr/lib/<triplet>.
 -- Iain Lane <email address hidden> Tue, 18 Mar 2014 12:41:00 +0000

Changed in qtbase-opensource-src (Ubuntu):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers