Skip to content

armv6 build fails with libc++ problems (tried RPI-B and Cubieboard1) #267

@AndiDog

Description

@AndiDog

Tried these boards:

RaspberryPi (supported by crochet)

board_setup RaspberryPi
option ImageSize 3900mb # for 4 Gigabyte card
option Ntpd
KERNCONF=RPI-B
FREEBSD_SRC=${TOPDIR}/../freebsd-11.2
WORKDIR=/tmp/work
FREEBSD_EXTRA_ARGS="MK_CCACHE_BUILD=yes"

Cubieboard1 (copied from Cubieboard2 just to try if it's compatible)

board_setup Cubieboard1
option ImageSize 1950mb # for 2 Gigabyte card
option Ntpd
KERNCONF=GENERIC
# tried build from both 11.2 and head
FREEBSD_SRC=${TOPDIR}/../freebsd
WORKDIR=/tmp/workcubieboard
FREEBSD_EXTRA_ARGS="MK_CCACHE_BUILD=yes"

I'm getting problems building LLVM, whatever board configuration I use. They look like:

In file included from /mnt/freebsd/contrib/llvm/tools/lld/Common/Args.cpp:10:
In file included from /mnt/freebsd/contrib/llvm/tools/lld/include/lld/Common/Args.h:13:
In file included from /mnt/freebsd/contrib/llvm/tools/lld/include/lld/Common/LLVM.h:20:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/Hashing.h:49:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/Support/Host.h:17:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/StringMap.h:17:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/StringRef.h:13:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/STLExtras.h:20:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/Optional.h:22:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/Support/type_traits.h:19:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/utility:202:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/cstring:61:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/string.h:61:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/string.h:47:
In file included from /mnt/freebsd/contrib/llvm/tools/lld/ELF/strings.h:14:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/ArrayRef.h:15:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/SmallVector.h:17:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/iterator_range.h:22:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/iterator:417:
/tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/__functional_base:81:16: error: no template named 'unary_function'; did you mean 'binary_function'?
        static unary_function<_Ap, _Rp>
               ^
/tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/__functional_base:28:29: note: 'binary_function' declared here
struct _LIBCPP_TEMPLATE_VIS binary_function
                            ^
/tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/__functional_base:81:16: error: too few template arguments for class template 'binary_function'
        static unary_function<_Ap, _Rp>
               ^
/tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/__functional_base:28:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS binary_function
                            ^
In file included from /mnt/freebsd/contrib/llvm/tools/lld/Common/Args.cpp:10:
In file included from /mnt/freebsd/contrib/llvm/tools/lld/include/lld/Common/Args.h:13:
In file included from /mnt/freebsd/contrib/llvm/tools/lld/include/lld/Common/LLVM.h:20:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/Hashing.h:49:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/Support/Host.h:17:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/StringMap.h:17:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/StringRef.h:13:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/STLExtras.h:20:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/Optional.h:22:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/Support/type_traits.h:19:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/utility:202:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/cstring:61:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/string.h:61:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/string.h:47:
In file included from /mnt/freebsd/contrib/llvm/tools/lld/ELF/strings.h:14:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/ArrayRef.h:15:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/ADT/SmallVector.h:20:
In file included from /mnt/freebsd/contrib/llvm/include/llvm/Support/MathExtras.h:19:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/algorithm:643:
In file included from /tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/memory:662:
/tmp/workcubieboard/obj/mnt/freebsd/arm.armv6/tmp/usr/include/c++/v1/tuple:1361:22: error: C++ requires a type specifier for all declarations
pair<_T1, _T2>::pair(piecewise_construct_t,

and more errors like "make_keys: Exec format error" where I stopped researching.


Does this work for anyone? What options do I need? It seems like libc++ is missing (internal) includes or built-ins for these errors.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions