This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: C++ xgcc for arm-none-eabi fails in 7.1, 7.2 due to undefined identifiers


R0b0t1 kirjoitti 18.8.2017 klo 19:17:
On Fri, Aug 18, 2017 at 1:09 AM, Freddie Chopin <freddie_chopin@op.pl> wrote:
On Thu, 2017-08-17 at 22:27 -0500, R0b0t1 wrote:
On Thu, Aug 17, 2017 at 4:44 PM, R0b0t1 <r030t1@gmail.com> wrote:
When compiling libssp, ssp.c, function __guard_setup:
O_RDONLY is undeclared (ssp.c:93:34),
ssize_t is an unknown type name (ssp.c:96:7), and
size_t is an unknown type name (ssp.c:113:25).

../../src/gcc-7.2.0/configure --target=$TARGET --prefix=$PREFIX
--with-cpu=cortex-m4 --with-fpu=fpv4-sp-d16 --with-float=hard
--with-mode=thumb --enable-multilib --enable-interwork
--enable-languages=c,c++ --with-system-zlib --with-newlib
--disable-shared --disable-nls --with-gnu-as --with-gnu-ld

A bootstrap C compiler is generated properly when passing --
without-headers.

All this talk about a "bootstrap C compiler", "magic scripts" etc. puts me to think there being serious ignorance about how to simply produce a newlib-based crosstoolchain using the traditional method : Putting gmp, mpc and mpfr sources for the host libraries and newlib & libgloss subdirs from the newlib sources, among the GCC sources and the building everything
in only one stage...

I tried the traditional method and there were no problems. No weird "bootstrap stage", no weird scripts required, only building binutils and then GCC with newlib after symlinking the extra srcs
into the main GCC source directory...

Here is the last rows from the build and then 'ls' for the $target stuff and trying the new GCC
driver :

make[5]: Siirrytään hakemistoon "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/thumb/libquadmath"
make  all-am
make[6]: Siirrytään hakemistoon "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/thumb/libquadmath"
true  DO=all multi-do # make
make[6]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/thumb/libquadmath" make[5]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/thumb/libquadmath" make[5]: Siirrytään hakemistoon "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/fpu/libquadmath"
make  all-am
make[6]: Siirrytään hakemistoon "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/fpu/libquadmath"
true  DO=all multi-do # make
make[6]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/fpu/libquadmath" make[5]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/fpu/libquadmath" make[4]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/libquadmath" make[3]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/libquadmath" make[2]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build/arm-cortex-eabi/libquadmath"
make[1]: Poistutaan hakemistosta "/home/src-old/gcc-7.2.0/build"
[root@localhost build]# ls arm-cortex-eabi
fpu  libgcc  libgloss  libquadmath  libssp  libstdc++-v3  newlib thumb
[root@localhost build]# gcc/xgcc -v
Using built-in specs.
COLLECT_GCC=gcc/xgcc
Target: arm-cortex-eabi
Configured with: ../configure --build=i686-linux-gnu --host=i686-linux-gnu --target=arm-cortex-eabi --prefix=/opt/cross --libdir=/opt/cross/lib --libexecdir=/opt/cross/lib --with-cpu=cortex-m4 --with-fpu=fpv4-sp-d16 --with-float=hard --with-mode=thumb --enable-multilib --enable-interwork --enable-languages=c,c++ --with-newlib --disable-shared --disable-nls --with-gxx-include-dir=/opt/cross/include/c++/7.2.0 --enable-version-specific-runtime-libs --program-prefix=arm-cortex-eabi- --program-suffix=-7.2
Thread model: single
gcc version 7.2.0 (GCC)



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]