Mir

Cross compiling fails with "error: '__uint64_t' does not name a type"

Bug #1262305 reported by Alan Griffiths
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Critical
Andreas Pokorny
mir (Ubuntu)
Fix Released
Critical
Unassigned

Bug Description

For example:

http://s-jenkins.ubuntu-ci:8080/job/mir-android-trusty-i386-build-fjg/5/consoleFull

This is recent and seems to relate to upstream changes. Using a cached partial-armhf-chroot from a few days ago works, a new one doesn't. (Which is why we saw failures in CI and Autolanding before seeing them locally).

Tags: blockingci

Related branches

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

There are changes in the headers that make code conditionally compiled with "# if __GLIBC_HAVE_LONG_LONG" now compile unconditionally. But I haven't tracked down why there's no definition of __uint64_t.

It is also strange that the error shows as being on /usr/arm-linux-gnueabihf/include/bits/byteswap.h when that shouldn't be on the search path (and, AIUI, ~/partial-armhf-chroot/usr/include/arm-linux-gnueabihf/bits/byteswap.h should be picked up). The diff between these files is - as you might guess basically:

< #elif __GLIBC_HAVE_LONG_LONG
---
> #else

I've tried dumping the system path from CMake - but it looks right.

Logging current state of progress as it's EOD here.

Revision history for this message
Andreas Pokorny (andreas-pokorny) wrote :

With -E -x c++ and our include paths you get the following search order:

#include "..." search starts here:
#include <...> search starts here:
 /home/andreas/mir/devel/include/shared
 /home/andreas/mir/devel/3rd_party/android-input/android/frameworks/base/services/input
 /home/andreas/mir/devel/3rd_party/android-input/android/frameworks/base/include
 /home/andreas/mir/devel/3rd_party/android-input/android/frameworks/native/include
 /home/andreas/mir/devel/3rd_party/android-input/android/hardware/libhardware_legacy/include
 /home/andreas/mir/devel/3rd_party/android-input/android/system/core/include
 /home/andreas/mir/devel/3rd_party/android-input/android/external/kernel-headers/original
 /home/andreas/mir/android-devel/src/shared/protobuf
 /home/andreas/mir/partial-armhf-chroot/usr/include
 /home/andreas/mir/devel/3rd_party/android-deps
 /usr/arm-linux-gnueabihf/include/c++/4.8.1
 /usr/arm-linux-gnueabihf/include/c++/4.8.1/arm-linux-gnueabihf
 /usr/arm-linux-gnueabihf/include/c++/4.8.1/backward
 /usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/include
 /usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/include-fixed
 /usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/../../../../arm-linux-gnueabihf/include
 /usr/include

tags: added: blockingci
Changed in mir:
importance: Undecided → High
milestone: none → 0.1.3
Changed in mir:
assignee: nobody → Andreas Pokorny (andreas-pokorny)
status: New → In Progress
Changed in mir:
importance: High → Critical
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:mir/devel at revision 1293, scheduled for release in mir, milestone Unknown

Changed in mir:
status: In Progress → Fix Committed
Changed in mir:
status: Fix Committed → Fix Released
Changed in mir (Ubuntu):
importance: Undecided → Critical
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.