This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more infromation.


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

Re: problem installing gcc 2.95.2 on m68k-coff (fwd)


Meir Hacohen wrote:
> 
>   I tried to install a GCC cross compiler 2.95 and 2.95.2 for target
> m68k-coff and I failed. I tried it at HPUX after I succeeded to install
> the native compiler. I got some compilation errors while the "make" is
> running.
> 
>   Following are some of the compilation errors I got :
> 
> *******************************************************************************
> 
> gcc -c  -DIN_GCC     -g -O2  -DHAVE_CONFIG_H    -I. -I../../gcc-2.95.2/gcc
> -I../../gcc-2.95.2/gcc/config -I../../gcc-2.95.2/gcc/../include
> ../../gcc-2.95.2/gcc/config/m68k/m68k.c
> ../../gcc-2.95.2/gcc/config/m68k/m68k.c: In function
> `valid_dbcc_comparison_p':
> ../../gcc-2.95.2/gcc/config/m68k/m68k.c:869: `cc_prev_status' undeclared
> (first use in this function)
> *******************************************************************************
> Is there a known problem in doing this ?

No AFAIK, but your host can cause this somehow. The hint is :

- the 'cc_prev_status' etc. are declared in the 'gcc-2.95.2/gcc/conditions.h'.
  Could it be possible that your native headers have a file with the same name
  and it will be used instead of the GCC-one?

  The 'gcc-2.95.2/gcc/config/m68k/m68k.c' includes it using '"'s instead of
  '<' and '>', so taking it from the system headers isn't expected...

Your build-dir seems to be `/gnu/gcc-obj', and your sources to be in
'/gnu/gcc-2.95.2'. Although the '-I../../gcc-2.95.2/gcc' is the second
in the list and GCC should search from it after the 'gcc' build dir, and
no environment settings for GCC could change this, not even C_INCLUDE_PATH :

------------------------------ clip ----------------------------------------
C_INCLUDE_PATH
CPLUS_INCLUDE_PATH
OBJC_INCLUDE_PATH

These environment variables pertain to particular languages.  Each variable's
value is a colon-separated list of directories, much like PATH.  When GCC
searches for header files, it tries the directories listed in the variable for
the language you are using, after the directories specified with -I but before
the standard header file directories.
------------------------------ clip ----------------------------------------

somehow it takes the header somewhere else...

Please try the '-v' option, using 'make CFLAGS="-v -O2"' and see what
your 'cpp' gives for the search order for the headers... There must be
something wrong now... If the search order is ok, perhaps your
'gcc/conditions.h' has been removed by an accident...

BTW, the file(s) where the 'cc_prev_status' is declared could be found
by a simple 'grep cc_prev_status *.h *.c' command, done in the 'gcc'
source directory.  Using 'grep' in cases like this is very useful...

Cheers, Kai


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


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