This is the mail archive of the gcc-help@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: building gcc for mipsel


22.8.2016, 18:38, Kai Ruottu kirjoitti:
About your problem elsewhere :

> mipsel-openwrt-linux-musl-gcc -g -Os -O2 -g -Os -DIN_GCC -W -Wall -Wno-narrowing > -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition > -isystem ./include -fPIC -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector > -fPIC -I. -I. -I../../host-mipsel-openwrt-linux-musl/gcc -I../.././libgcc > -I../.././libgcc/. -I../.././libgcc/../gcc -I../.././libgcc/../include -DHAVE_CC_TLS > -o _m16addsf3_s.o -MT _m16addsf3_s.o -MD -MP -MF _m16addsf3_s.dep -DSHARED -DL_m16addsf3
> -xassembler-with-cpp -c ../.././libgcc/config/mips/mips16.S

The use of stuff for 'mips16' could come from the '-elf' choice, Linux not using these 16-bit opcodes
at all...


Seemingly I was wrong... I checked from my 'mips64el-linux-gnu' targeted crosstoolchain (gcc-4.8.3) and its libgcc had these objects being produced. But of course produced with the just built GCC, not with some earlier made GCC (your ' mipsel-openwrt-linux-musl-gcc'). The object format in the default
libraries were like this :

File: libgcc.a(_satfractunsUTIUTA.o)
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              REL (Relocatable file)
  Machine:                           MIPS R3000
  Version:                           0x1
  Entry point address:               0x0
  Start of program headers:          0 (bytes into file)
  Start of section headers:          2088 (bytes into file)
Flags: 0x20000027, noreorder, pic, cpic, abi2, mips3
  Size of this header:               52 (bytes)
  Size of program headers:           0 (bytes)
  Number of program headers:         0
  Size of section headers:           40 (bytes)
  Number of section headers:         25
  Section header string table index: 22

The copied glibc was probably an old Debian one (this inside the 'lib/libc.so.6') :

GNU C Library stable release version 2.7, by Roland McGrath et al.
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.3.2.
Compiled on a Linux >>2.6.32-5-sb1-bcm91250a<< system on 2011-01-08.

Also in my gcc-5.1.0 based toolchain these things were in the same way, the glibc
from Debian was only changed to glibc-2.13...

[root@localhost 5.1.0]# mips64el-linux-gnu-gcc-5.1 -v
Using built-in specs.
COLLECT_GCC=mips64el-linux-gnu-gcc-5.1
COLLECT_LTO_WRAPPER=/opt/cross/lib/gcc/mips64el-linux-gnu/5.1.0/lto-wrapper
Target: mips64el-linux-gnu
Configured with: ../configure --build=i686-linux-gnu --host=i686-linux-gnu --target=mips64el-linux-gnu --prefix=/opt/cross --with-sysroot=/opt/host-mipsel-debian7.4.0-linux --libexecdir=/opt/cross/lib --enable-languages=c,c++,fortran --enable-targets=all --enable-shared --enable-threads=posix --enable-linker-build-id --enable-checking=release --enable-libstdcxx-debug --enable-clocale=gnu --disable-nls --without-included-gettext --enable-version-specific-runtime-libs --disable-libssp --disable-libgomp --with-gxx-include-dir=/opt/cross/include/c++/5.1.0 --program-prefix=mips64el-linux-gnu- --program-suffix=-5.1
Thread model: posix
gcc version 5.1.0 (GCC)


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