Gnuk with GCC >= 5

NIIBE Yutaka gniibe at fsij.org
Tue Aug 28 03:04:03 CEST 2018


Hello,

For my own environment, configure options for GCC build is:

    https://salsa.debian.org/debian/gcc-arm-none-eabi/blob/master/debian/rules#L33

I found a problem in your configuration of GCC.

For the target arm-none-eabi, which Gnuk uses, it's free standing
environment, where we have no system calls and no loarder (any kinds
of, not only dynamic linker+loader, but also the initial static
loader).

So, some configure options are irrelevant.

Bertrand Jacquin <bertrand at jacquin.bzh> wrote:
> I let Gentoo do it for me :) Here is the configure statement:
[...]
>  * Configuring GCC with:
>  *      --host=x86_64-pc-linux-gnu
>  *      --target=arm-none-eabi
>  *      --build=x86_64-pc-linux-gnu
>  *      --prefix=/usr
>  *      --bindir=/usr/x86_64-pc-linux-gnu/arm-none-eabi/gcc-bin/7.3.0
>  *      --includedir=/usr/lib/gcc/arm-none-eabi/7.3.0/include
>  *      --datadir=/usr/share/gcc-data/arm-none-eabi/7.3.0
>  *      --mandir=/usr/share/gcc-data/arm-none-eabi/7.3.0/man
>  *      --infodir=/usr/share/gcc-data/arm-none-eabi/7.3.0/info
>  *      --with-gxx-include-dir=/usr/lib/gcc/arm-none-eabi/7.3.0/include/g++-v7
>  *      --with-python-dir=/share/gcc-data/arm-none-eabi/7.3.0/python
>  *      --enable-languages=c,jit
>  *      --enable-obsolete

No problem, so far.

>  *      --enable-secureplt

This is irrelevant for arm-none-eabi.  It doesn't use PLT.  Perhaps,
specifying this option is OK, provided we don't use PLT.

>  *      --disable-werror
>  *      --with-system-zlib
>  *      --enable-nls
>  *      --without-included-gettext
>  *      --enable-checking=release
>  *      --with-bugurl=https://bugs.gentoo.org/
>  *      --with-pkgversion=Gentoo Hardened 7.3.0-r3 p1.4

Those are OK.

>  *      --enable-esp
>  *      --disable-libstdcxx-pch
>  *      --enable-host-shared
>  *      --enable-poison-system-directories

I wonder if those makes sence (and how) for arm-none-eabi.

>  *      --disable-libstdcxx-time
>  *      --with-sysroot=/usr/arm-none-eabi
>  *      --disable-bootstrap
>  *      --with-newlib
>  *      --enable-multilib
>  *      --disable-altivec
>  *      --disable-fixed-point
>  *      --with-float=soft
>  *      --disable-libgomp
>  *      --disable-libmudflap
>  *      --disable-libssp
>  *      --disable-libcilkrts
>  *      --disable-libmpx

No problem.

>  *      --enable-vtable-verify
>  *      --enable-libvtv

I think that it doesn't matter for Gnuk build.

>  *      --disable-libquadmath
>  *      --enable-lto
>  *      --without-isl
>  *      --disable-libsanitizer

No problem.

>  *      --enable-default-pie

This is wrong.  We don't have dynamic linker for arm-none-eabi.  This
might be the cause of your problem.  At least, I'm sure that it will
generate dynamic relocations.

>  *      --enable-default-ssp

How does it make sence for arm-none-eabi?  I don't know.
-- 



More information about the Gnuk-users mailing list