Explicit g++ 4.9 dependency breaks cross-building

Bug #1353855 reported by Michał Sawicz on 2014-08-07
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Medium
Robert Carr
mir (Ubuntu)
Undecided
Robert Carr
qtmir (Ubuntu)
Undecided
Unassigned
unity-api (Ubuntu)
Undecided
Michał Sawicz
unity-scopes-api (Ubuntu)
Undecided
Michał Sawicz
unity8 (Ubuntu)
High
dobey

Bug Description

With the new explicit g++ 4.9 dependency apt falls over when trying to install cross-dependencies for e.g. Mir:

The following packages have unmet dependencies:
 g++-4.9:armhf : Depends: gcc-4.9:armhf (= 4.9.1-4ubuntu3) but it is not going to be installed
E: Build-dependencies for sbuild-build-depends-mir-dummy could not be satisfied.

This means cross-building doesn't work for any packages that have that dependency added. We were told it's going to be fine due to 4.9 becoming default, but it is now, and the situation remains.

Related branches

Michał Sawicz (saviq) wrote :
Michał Sawicz (saviq) wrote :

This is still a problem:

# apt-get build-dep -aarmhf unity8
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have unmet dependencies:
 g++-4.9:armhf : Depends: gcc-4.9:armhf (= 4.9.1-4ubuntu3) but it is not going to be installed
E: Build-dependencies for unity8 could not be satisfied.

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mir (Ubuntu):
status: New → Confirmed
Changed in qtmir (Ubuntu):
status: New → Confirmed
Changed in unity8 (Ubuntu):
status: New → Confirmed
Robert Carr (robertcarr) wrote :

I'm so tired of broken cross compile work flows I am going to figure it out.

Changed in mir (Ubuntu):
assignee: nobody → Robert Carr (robertcarr)
Changed in mir:
assignee: nobody → Robert Carr (robertcarr)
status: New → In Progress
milestone: none → 0.8.0
Changed in mir:
importance: Undecided → Medium
Changed in mir:
milestone: 0.8.0 → 0.9.0
Andrea Cimitan (cimi) wrote :

The workaround for now is to edit debian/control of the package we are building and dropping g++ dep completely

Changed in mir:
milestone: 0.9.0 → 0.8.0
dobey (dobey) on 2014-09-16
Changed in unity8 (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Rodney Dawes (dobey)
importance: Undecided → High
Changed in mir:
milestone: 0.8.0 → 0.9.0
Changed in mir:
milestone: 0.9.0 → 0.10.0
Changed in mir:
milestone: 0.10.0 → none
status: In Progress → Confirmed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity8 - 8.02+15.04.20150109.2-0ubuntu1

---------------
unity8 (8.02+15.04.20150109.2-0ubuntu1) vivid; urgency=low

  [ Michał Sawicz ]
  * We don't need the SIGSTOP in main() any more.
  * Add a test to make sure the shell always starts disabled until it is
    enabled by a complete PAM interaction.

  [ Leo Arias ]
  * Added an autopilot test for the edges demo.

  [ Nick Dedekind ]
  * Unhook Lights interface from indicator widgets (LP: #1385331)

  [ Albert Astals ]
  * Fix going to scopes when the Manage Dash is open (LP: #1403464)
  * QSortFilterProxyModelQML -> UnitySortFilterProxyModelQML
  * Clip the Scopes List header
  * Fix ScopesList not being under finger
  * Make waitForRendering with no item fail instead of crash
  * Disable Dash horizontal scroll while Navigation InverseMouseArea is
    pressed (LP: #1403048)
  * Test: Make sure the mouse area is enabled before clicking into it
  * Test: We actually need to click on the customBackButton and not on
    backButton
  * Test: By default mouseX act on the middle

  [ Michael Terry ]
  * Don't block handling power events on loading the greeter's qml and
    the background image.
  * Show OSK above the wizard. (LP: #1401213)
  * Unify the name of the Greeter DBus test, make it use our standard
    binary test macro (which also nicely exports xml results), and make
    the test a little more robust against timing issues.
  * Add a test to make sure the shell always starts disabled until it is
    enabled by a complete PAM interaction.

  [ Martin Pitt ]
  * tests: Fix Notify.Notification.add_action invocation to work also
    with unpatched libnotify API. (LP: #1223401)

  [ Rodney Dawes ]
  * Depend on :native version of g++ to allow cross-compiling to work.
    (LP: #1353855)
 -- Ubuntu daily release <email address hidden> Fri, 09 Jan 2015 10:43:06 +0000

Changed in unity8 (Ubuntu):
status: In Progress → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qtmir - 0.4.4+15.04.20150114-0ubuntu1

---------------
qtmir (0.4.4+15.04.20150114-0ubuntu1) vivid; urgency=low

  [ Gerry Boland ]
  * Depend on :native version of g++ to allow cross-compiling to work.
    (LP: #1353855)

  [ Michał Sawicz ]
  * Declare the QByteArray in callDispatcher so it doesn't get deleted
    before it's copied. (LP: #1408819)

  [ Josh Arenson ]
  * Assign touch events area to the correct values.

  [ Albert Astals ]
  * Move the creation of the surface observer to
    SessionListener::surface_created
 -- Ubuntu daily release <email address hidden> Wed, 14 Jan 2015 09:07:53 +0000

Changed in qtmir (Ubuntu):
status: Confirmed → Fix Released
Changed in unity-scopes-api (Ubuntu):
status: New → In Progress
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-scopes-api - 0.6.11+15.04.20150121.2-0ubuntu1

---------------
unity-scopes-api (0.6.11+15.04.20150121.2-0ubuntu1) vivid; urgency=low

  [ Ubuntu daily release ]
  * debian/libunity-scopes3.symbols: auto-update to released version

  [ thomas-voss ]
  * Switch from QNetwork to net-cpp (LP: #1326816, #1409995)

  [ Michał Sawicz ]
  * Depend on :native version of g++ to allow cross-compiling to work.
    Also run `wrap-and-sort -at` (LP: #1353855)

  [ Marcus Tomlinson ]
  * Switch from QNetwork to net-cpp (LP: #1326816, #1409995)

  [ Michi Henning ]
  * Added utility subdir to header tests.
  * Bunch of miscellaneous fixes:

  [ James Henstridge ]
  * Expose the deserialize() static method on FilterBase and FilterState
    for use by the Go bindings.
 -- Ubuntu daily release <email address hidden> Wed, 21 Jan 2015 12:46:41 +0000

Changed in unity-scopes-api (Ubuntu):
status: In Progress → Fix Released
Michał Sawicz (saviq) on 2015-02-11
Changed in unity-api (Ubuntu):
status: New → In Progress
assignee: nobody → Michał Sawicz (saviq)
Changed in unity-scopes-api (Ubuntu):
assignee: nobody → Michał Sawicz (saviq)
Michi Henning (michihenning) wrote :

I got an email overnight pointing to the following:

https://launchpad.net/~unity-team/+archive/ubuntu/ppa/+recipebuild/867970

From the build log:

The following packages have unmet dependencies:
 pbuilder-satisfydepends-dummy : Depends: g++-4.9:native which is a virtual package.
                                 Depends: libnet-cpp-dev which is a virtual package.
                                 Depends: libnet-cpp-dev (>= 1.1.0) which is a virtual package.
Unable to resolve dependencies! Giving up...

Michał Sawicz (saviq) wrote :

Yeah, recipes are unhappy about the :native bit because they are usually ran on older stacks where dpkg didn't understand it yet. I've deleted the (outdated) recipes for now. I've got the unity-api fix in a silo right now, will release early tomorrow.

Michi Henning (michihenning) wrote :

Thanks for that, much appreciate it!

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-api - 7.95+15.04.20150211-0ubuntu1

---------------
unity-api (7.95+15.04.20150211-0ubuntu1) vivid; urgency=medium

  [ Michael Zanetti ]
  * add onlyPinned property to launcher model

  [ Michał Sawicz ]
  * Add :native to g++ dependency for cross-building and wrap-and-sort
    for good measure. Python needs :any, too. (LP: #1353855)
 -- Ubuntu daily release <email address hidden> Wed, 11 Feb 2015 16:28:29 +0000

Changed in unity-api (Ubuntu):
status: In Progress → Fix Released
Robert Carr (robertcarr) on 2015-05-21
Changed in mir:
status: Confirmed → Fix Released
Changed in mir (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers