clang armhf in trusty simply doesn't work
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
llvm-toolchain-3.4 (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
I'm running Ubuntu 14.04 on armhf. clang is from the standard repo:
root@tegra-
Package: clang
Priority: optional
Section: universe/devel
Installed-Size: 27
Maintainer: Ubuntu Developers <email address hidden>
Original-
Architecture: armhf
Source: llvm-defaults (0.21ubuntu1)
Version: 1:3.4-0ubuntu1
Replaces: clang (<< 3.2-1~exp2)
Depends: clang-3.4 (>= 3.4~rc3-1~)
Filename: pool/universe/
Size: 2478
MD5sum: eadb3f7c344e364
SHA1: ec4d0bfcad42bf5
SHA256: f6d9a8fbfc06d93
Description-en: C, C++ and Objective-C compiler (LLVM based)
Clang project is a C, C++, Objective C and Objective C++ front-end
for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
Collection (GCC).
.
Clang implements all of the ISO C++ 1998 and 2001 standards and also provides
a partial support of C++1y.
.
This is a dependency package providing the default clang compiler.
Description-md5: ea1f164ac255f39
Bugs: https:/
Origin: Ubuntu
Anyway, it does not produce working output. Here are some examples:
https:/
This log shows how clang has the wrong default target CPU, so it outputs unsupported ARM instructions (see the end after the warnings spew).
If I force the target cpu to a cortex-a15 it now at least compiles and links and starts to run unit tests:
https:/
... but hangs in the first unit test, and is timed out. Before you think it the unit tests, here is the exact same thing for GCC 4.8:
https:/
The unit tests all run and pass as expected. Everything also works fine on x86 and x64 with clang 3.4 on Ubuntu 14.04, this appears to be an armhf misconfiguration.
Niall
Given that you see this failure, maybe you should report it to Boost upstream, since beta version of boost is attempted to be compiled here? And it's claimed that upstream supports clang 3.4.
In Ubuntu, boost 1.54 is fully supported in trusty with the default gcc toolchain.