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]

gcc 3.0 mips (elf) cross compiler problem


Greetings,

There seems to be a problem in building a cross compiler for (at least) the
mips target.

Using:
   binutils-2.11.2/  gcc-3.0/  gdb-5.0/  newlib-1.9.0/

Host platform:
   % uname -a
   Linux chef.xxxx.xxx 2.4.2-2 #1 Sun Apr 8 20:41:30 EDT 2001 i686 unknown

   % gcc -v
   Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
   gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-81)



First I configured, make and make installed the binutils for --target=mips.



Next I configured gcc-3.0 with following options:

% cat config.status 
#!/bin/sh
# This file was generated automatically by configure.  Do not edit.
# This directory was configured as follows:
../../gcc-3.0/configure
--with-gcc-version-trigger=/export/dev/gcc/3.0/mips/gcc-3.0/gcc/version.c
--host=i686-pc-linux-gnu --target=mips --prefix=/usr/local/gcc/3.0/mips
--enable-languages=c,c++ --with-newlib
--with-headers=../../newlib-1.9.0/newlib/libc/include --with-gnu-as
--with-gnu-ld --norecursion 
# 

(see attachment for a copy of configure script's output)

Next I did `make cross' which failed as follows:


make[2]: Entering directory
`/export/dev/gcc/3.0/mips/obj/gcc-3.0/mips/libiberty'
if [ x"" != x ] && [ ! -d pic ]; then \
  mkdir pic; \
else true; fi
touch stamp-picdir
if [ x"" != x ]; then \
  /export/dev/gcc/3.0/mips/obj/gcc-3.0/gcc/xgcc
-B/export/dev/gcc/3.0/mips/obj/gcc-3.0/gcc/ -nostdinc
-B/export/dev/gcc/3.0/mips/obj/gcc-3.0/mips/newlib/ -isystem
/export/dev/gcc/3.0/mips/obj/gcc-3.0/mips/newlib/targ-include -isystem
/export/dev/gcc/3.0/mips/gcc-3.0/newlib/libc/include
-B/usr/local/gcc/3.0/mips/mips/bin/ -B/usr/local/gcc/3.0/mips/mips/lib/
-isystem /usr/local/gcc/3.0/mips/mips/include -c -DHAVE_CONFIG_H -g -O2 -I.
-I../../../../gcc-3.0/libiberty/../include  -W -Wall -Wtraditional -pedantic 
../../../../gcc-3.0/libiberty/argv.c -o pic/argv.o; \
else true; fi
/export/dev/gcc/3.0/mips/obj/gcc-3.0/gcc/xgcc
-B/export/dev/gcc/3.0/mips/obj/gcc-3.0/gcc/ -nostdinc
-B/export/dev/gcc/3.0/mips/obj/gcc-3.0/mips/newlib/ -isystem
/export/dev/gcc/3.0/mips/obj/gcc-3.0/mips/newlib/targ-include -isystem
/export/dev/gcc/3.0/mips/gcc-3.0/newlib/libc/include
-B/usr/local/gcc/3.0/mips/mips/bin/ -B/usr/local/gcc/3.0/mips/mips/lib/
-isystem /usr/local/gcc/3.0/mips/mips/include -c -DHAVE_CONFIG_H -g -O2 -I.
-I../../../../gcc-3.0/libiberty/../include  -W -Wall -Wtraditional -pedantic
../../../../gcc-3.0/libiberty/argv.c
../../../../gcc-3.0/libiberty/argv.c:35:20: string.h: No such file or directory
../../../../gcc-3.0/libiberty/argv.c:36:20: stdlib.h: No such file or directory
../../../../gcc-3.0/libiberty/argv.c: In function `dupargv':
../../../../gcc-3.0/libiberty/argv.c:101: warning: implicit declaration of
function `malloc'
../../../../gcc-3.0/libiberty/argv.c:108: warning: implicit declaration of
function `strlen'
../../../../gcc-3.0/libiberty/argv.c:109: warning: assignment makes pointer
from integer without a cast
../../../../gcc-3.0/libiberty/argv.c:115: warning: implicit declaration of
function `strcpy'
../../../../gcc-3.0/libiberty/argv.c: In function `freeargv':
../../../../gcc-3.0/libiberty/argv.c:153: warning: implicit declaration of
function `free'
../../../../gcc-3.0/libiberty/argv.c:155: warning: function `free' was
previously declared within a block
../../../../gcc-3.0/libiberty/argv.c: In function `buildargv':
../../../../gcc-3.0/libiberty/argv.c:237: warning: function `malloc' was
previously declared within a block
../../../../gcc-3.0/libiberty/argv.c:242: warning: implicit declaration of
function `realloc'
../../../../gcc-3.0/libiberty/argv.c:316: warning: implicit declaration of
function `strdup'
../../../../gcc-3.0/libiberty/argv.c:316: warning: assignment makes pointer
from integer without a cast
make[2]: *** [argv.o] Error 1
make[2]: Leaving directory
`/export/dev/gcc/3.0/mips/obj/gcc-3.0/mips/libiberty'
make[1]: *** [all-target-libiberty] Error 2
make[1]: Leaving directory `/export/dev/gcc/3.0/mips/obj/gcc-3.0'
make: *** [cross] Error 2


(see attachment for a copy of `make cross' output)


Note that if were to re-issue the compile line that failed and include as a
command line option -isystem /usr/local/gcc/3.0/mips/mips/sys-include/ the
compilation succeeds.


Any ideas why that directory isn't included as part of the command line?


Attached tar.bz2 file contains output from:

   configure script
   make cross
   config.status
   config.cache

The files are prefixed with `gcc-3.0'.



Thanks for all who take the time to reply,


patrick 

Btw. the GCC Cross Compiler HOWTO seems out-dated as its instructions did not
work since 2.95.2 release (at least).

=====
Reality is an illusion that occurs due to lack of alcohol.
   -- Anonymous

__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail
http://personal.mail.yahoo.com/

gcc-3.0-mips-cross-problems.tar.bz2


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