* Cross Compiler Host MinGW Target PowerPC
@ 2006-11-10 15:26 Sebastian Ebenbeck
2006-11-10 15:48 ` John Love-Jensen
0 siblings, 1 reply; 10+ messages in thread
From: Sebastian Ebenbeck @ 2006-11-10 15:26 UTC (permalink / raw)
To: gcc-help
Hello I need Your HELP,
I try to compile a cross compiler.
Host System: PC MinGW
Compiler: gcc.exe (GCC) 3.4.2 (mingw-special)
Target System: powerpc-405-eabi
Configuration: "./configure --prefix=/home/seb/ppc
--target=powerpc-405-eabi"
The configuration works but I get a warning:
*** This configuration is not supported in the following subdirectories:
target-libmudflap target-libffi target-boehm-gc target-zlib
target-libjava target-libada gnattools target-libgfortran
I think thats not important ??
Compilation: "make"
I got the following errors:
make[4]: Leaving directory `/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc'
/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc/xgcc
-B/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc/
-B/home/seb/ppc/powerpc-405-eabi/bin/
-B/home/seb/ppc/powerpc-405-eabi/lib/ -isystem
/home/seb/ppc/powerpc-405-eabi/include -isystem
/home/seb/ppc/powerpc-405-eabi/sys-include -O2 -O2 -g -O2 -DIN_GCC
-DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -isystem ./include
-specs=ldblspecs -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
-Dinhibit_libc -I. -I -I../.././gcc -I../.././gcc/
-I../.././gcc/../include -I./../intl -I../.././gcc/../libcpp/include
-mrelocatable-lib -mno-eabi -mstrict-align -DL_muldi3 -c
../.././gcc/libgcc2.c -o libgcc/./_muldi3.o
In file included from ../.././gcc/libgcc2.c:35:
./tm.h:5:35: error: config/rs6000/rs6000.h: No such file or directory
./tm.h:6:28: error: config/dbxelf.h: No such file or directory
./tm.h:7:27: error: config/elfos.h: No such file or directory
./tm.h:8:26: error: config/svr4.h: No such file or directory
./tm.h:9:34: error: config/freebsd-spec.h: No such file or directory
./tm.h:10:34: error: config/rs6000/sysv4.h: No such file or directory
./tm.h:11:33: error: config/rs6000/eabi.h: No such file or directory
./tm.h:12:23: error: defaults.h: No such file or directory
In file included from ../.././gcc/libgcc2.c:43:
../.././gcc/libgcc2.h:214:3: error: #error "expand the table"
../.././gcc/libgcc2.c: In function '__mulhi3':
../.././gcc/libgcc2.c:514: error: 'BITS_PER_UNIT' undeclared (first use
in this function)
../.././gcc/libgcc2.c:514: error: (Each undeclared identifier is
reported only once
../.././gcc/libgcc2.c:514: error: for each function it appears in.)
make[3]: *** [libgcc/./_muldi3.o] Error 1
make[3]: Leaving directory `/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc'
make[2]: *** [stmp-multilib] Error 2
make[2]: Leaving directory `/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/home/seb/gcc-4.1.1'
make: *** [all] Error 2
The file: "./gcc/config/rs6000/rs6000.h" exits. But it seams to be in
the wrong directory.
I get the following errors if I copy
the folder "./gcc/config" to "./host-i686-pc-mingw32/gcc/"
and the file "./gcc/defaults.h" to "./host-i686-pc-mingw32/gcc/"
then run "make" again:
make[4]: Leaving directory `/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc'
/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc/xgcc
-B/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc/
-B/home/seb/ppc/powerpc-405-eabi/bin/
-B/home/seb/ppc/powerpc-405-eabi/lib/ -isystem
/home/seb/ppc/powerpc-405-eabi/include -isystem
/home/seb/ppc/powerpc-405-eabi/sys-include -O2 -O2 -g -O2 -DIN_GCC
-DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -isystem ./include
-specs=ldblspecs -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
-Dinhibit_libc -I. -I -I../.././gcc -I../.././gcc/
-I../.././gcc/../include -I./../intl -I../.././gcc/../libcpp/include
-mrelocatable-lib -mno-eabi -mstrict-align -DL_muldi3 -c
../.././gcc/libgcc2.c -o libgcc/./_muldi3.o
xgcc.exe: _spawnvp: No such file or directory
make[3]: *** [libgcc/./_muldi3.o] Error 1
make[3]: Leaving directory `/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc'
make[2]: *** [stmp-multilib] Error 2
make[2]: Leaving directory `/home/seb/gcc-4.1.1/host-i686-pc-mingw32/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/home/seb/gcc-4.1.1'
make: *** [all] Error 2
Now I don't know what to do.
I have tried to compile other versions of gcc (3.3.2, 3.4.6) with no
success.
Please Help!
Sebastian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-10 15:26 Cross Compiler Host MinGW Target PowerPC Sebastian Ebenbeck
@ 2006-11-10 15:48 ` John Love-Jensen
2006-11-20 11:04 ` Sebastian Ebenbeck
0 siblings, 1 reply; 10+ messages in thread
From: John Love-Jensen @ 2006-11-10 15:48 UTC (permalink / raw)
To: Sebastian Ebenbeck, MSX to GCC
Hi Sebastian,
Rule #1: do not ./configure in the same directory as the GCC source.
Rule #2: do not ../configure from any subdirectory within the GCC source.
Rule #3: if Rule #1 or Rule #2 is violated, your source directory is tainted
and needs to be deleted and un'tar'd fresh.
Make a peer directory to the GCC source. Then ../gcc-source/configure from
there.
HTH,
--Eljay
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-10 15:48 ` John Love-Jensen
@ 2006-11-20 11:04 ` Sebastian Ebenbeck
2006-11-20 11:39 ` Brian Dessent
0 siblings, 1 reply; 10+ messages in thread
From: Sebastian Ebenbeck @ 2006-11-20 11:04 UTC (permalink / raw)
To: MSX to GCC
Hello,
Thank you for your help!
I have read some good informations in the Web and use now a combined
build tree.
So I am able to compile the GCC in Linux now!
Today I tried the same procedure in MinGW and fail.
Output after "make":
...
echo "\"/home/seb/combined/gcc/c-objc-common.c\", " >> tmp-gtyp.h
echo "\"/home/seb/combined/gcc/c-parser.c\", " >> tmp-gtyp.h
echo " NULL};" >> tmp-gtyp.h
echo "static const char *const lang_dir_names[] = { \"c\", " >> tmp-gtyp.h
echo "\"cp\", " >> tmp-gtyp.h
echo "NULL};" >> tmp-gtyp.h
/bin/sh /home/seb/combined/gcc/../move-if-change tmp-gtyp.h gtyp-gen.h
echo timestamp > s-gtyp-gen
gcc -c -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-Wmissing-format-attribute -DHAVE_CONFIG_H -DGENERATOR_FILE -I.
-Ibuild -I/home/seb/combined/gcc -I/home/seb/combined/gcc/build
-I/home/seb/combined/gcc/../include -I./../intl
-I/home/seb/combined/gcc/../libcpp/include -o build/gengtype.o
/home/seb/combined/gcc/gengtype.c
gcc -c -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-Wmissing-format-attribute -Wno-error -DHAVE_CONFIG_H -DGENERATOR_FILE
-I. -Ibuild -I/home/seb/combined/gcc -I/home/seb/combined/gcc/build
-I/home/seb/combined/gcc/../include -I./../intl
-I/home/seb/combined/gcc/../libcpp/include -o build/gengtype-lex.o
/home/seb/combined/gcc/gengtype-lex.c
gengtype-lex.c:3400: warning: no previous prototype for 'yyget_lineno'
gengtype-lex.c:3409: warning: no previous prototype for 'yyget_in'
gengtype-lex.c:3417: warning: no previous prototype for 'yyget_out'
gengtype-lex.c:3425: warning: no previous prototype for 'yyget_leng'
gengtype-lex.c:3434: warning: no previous prototype for 'yyget_text'
gengtype-lex.c:3443: warning: no previous prototype for 'yyset_lineno'
gengtype-lex.c:3455: warning: no previous prototype for 'yyset_in'
gengtype-lex.c:3460: warning: no previous prototype for 'yyset_out'
gengtype-lex.c:3465: warning: no previous prototype for 'yyget_debug'
gengtype-lex.c:3470: warning: no previous prototype for 'yyset_debug'
gengtype-lex.c:3476: warning: no previous prototype for 'yylex_destroy'
gcc -c -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-Wmissing-format-attribute -Wno-error -DHAVE_CONFIG_H -DGENERATOR_FILE
-I. -Ibuild -I/home/seb/combined/gcc -I/home/seb/combined/gcc/build
-I/home/seb/combined/gcc/../include -I./../intl
-I/home/seb/combined/gcc/../libcpp/include -o build/gengtype-yacc.o
/home/seb/combined/gcc/gengtype-yacc.c
gcc -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-Wmissing-format-attribute -DHAVE_CONFIG_H -DGENERATOR_FILE -o
build/gengtype.exe \
build/gengtype.o build/gengtype-lex.o build/gengtype-yacc.o \
build/errors.o ../build-i686-pc-mingw32/libiberty/libiberty.a
build/gengtype.exe
/home/seb/combined/gcc/input.h: No such file or directory
make[2]: *** [s-gtype] Error 1
make[2]: Leaving directory `/home/seb/build/combined/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/home/seb/build/combined'
make: *** [all] Error 2
The output from "ls -l /home/seb/combined/gcc/input.h"
-rw-r--r-- 2 seb Administ 2896 Jun 25 2005
/home/seb/combined/gcc/input.h
The output from "cat -n /home/seb/combined/gcc/input.h"
1 /* Declarations for variables relating to reading the source file.
2 Used by parsers, lexical analyzers, and error message routines.
3 Copyright (C) 1993, 1997, 1998, 2000, 2003, 2004 Free
Software Foundation, Inc.
4
5 This file is part of GCC.
6
7 GCC is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 2, or (at your option) any later
10 version.
11
12 GCC is distributed in the hope that it will be useful, but
WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
License
15 for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING. If not, write to the Free
19 Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
20 02110-1301, USA. */
21
22 #ifndef GCC_INPUT_H
23 #define GCC_INPUT_H
24
25 #include "line-map.h"
26 extern struct line_maps line_table;
27
28 /* The location for declarations in "<built-in>" */
29 #define BUILTINS_LOCATION ((source_location) 2)
...
I don't now why the compile process think that the file does not exist.
Please Help!
Sebastian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-20 11:04 ` Sebastian Ebenbeck
@ 2006-11-20 11:39 ` Brian Dessent
2006-11-20 11:57 ` Brian Dessent
0 siblings, 1 reply; 10+ messages in thread
From: Brian Dessent @ 2006-11-20 11:39 UTC (permalink / raw)
To: Sebastian Ebenbeck; +Cc: MSX to GCC
Sebastian Ebenbeck wrote:
> Thank you for your help!
> I have read some good informations in the Web and use now a combined
> build tree.
> So I am able to compile the GCC in Linux now!
> Today I tried the same procedure in MinGW and fail.
You need to provide more information. What *exact* configure command
are you using, specifically what are you providing for --host, --build,
--target, and --prefix? What is the build host, MSYS or Cygwin? Are
you providing a relative path to the location of configure or an
absolute path?
> build/gengtype.exe
> /home/seb/combined/gcc/input.h: No such file or directory
Here it looks like you have a mingw program trying to access posix
paths. That won't work, mingw programs need to use win32 paths.
> The output from "ls -l /home/seb/combined/gcc/input.h"
> -rw-r--r-- 2 seb Administ 2896 Jun 25 2005
> /home/seb/combined/gcc/input.h
This works because ls is a MSYS or Cygwin app, not a native app, so it
understands posix paths and knows how to map /home/seb to a Windows
path. Or at least that's my guess, because you didn't give enough
information to know for sure.
Brian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-20 11:39 ` Brian Dessent
@ 2006-11-20 11:57 ` Brian Dessent
2006-11-20 13:35 ` Kai Ruottu
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Brian Dessent @ 2006-11-20 11:57 UTC (permalink / raw)
To: gcc-help; +Cc: Sebastian Ebenbeck
Brian Dessent wrote:
> > I have read some good informations in the Web and use now a combined
> > build tree.
> > So I am able to compile the GCC in Linux now!
> > Today I tried the same procedure in MinGW and fail.
>
> You need to provide more information. What *exact* configure command
> are you using, specifically what are you providing for --host, --build,
> --target, and --prefix? What is the build host, MSYS or Cygwin? Are
> you providing a relative path to the location of configure or an
> absolute path?
>
> > build/gengtype.exe
> > /home/seb/combined/gcc/input.h: No such file or directory
>
> Here it looks like you have a mingw program trying to access posix
> paths. That won't work, mingw programs need to use win32 paths.
Just to clarify, the reason that MinGW can be a difficult host is
because the build tools (MSYS) understand posix paths but native MinGW
binaries do not. This means that you have to be careful that all paths
that are compiled into binaries/headers (such as in specs or the build
helper programs like gengtype) are either relative paths or win32 paths
(c:/foo/bar).
In the case above it looks like you've got a gengtype.exe that
apparently got a posix-style absolute path leaked into it somewhere. So
you have to ensure that the $srcdir, $builddir, $prefix etc. in the
Makefile end up as either relative paths or win32 paths. $srcdir gets
set based on the path used to invoke configure, which is why the
particulars of how you do this can matter greatly on MinGW.
It would be a lot easier to instead use Cygwin as the host for a cross
compiler because you don't have to worry about any of this, as all
Cygwin binaries understand posix paths so there is none of this
"cognitive dissonance" between the build system and the actual binaries.
Brian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-20 11:57 ` Brian Dessent
@ 2006-11-20 13:35 ` Kai Ruottu
2006-11-20 14:39 ` Sebastian Ebenbeck
2006-11-21 11:01 ` Sebastian Ebenbeck
2 siblings, 0 replies; 10+ messages in thread
From: Kai Ruottu @ 2006-11-20 13:35 UTC (permalink / raw)
To: gcc-help; +Cc: Sebastian Ebenbeck
Brian Dessent kirjoitti:
>>> So I am able to compile the GCC in Linux now!
>>> Today I tried the same procedure in MinGW and fail.
>>>
As a "build factory" Linux is quite working... But Windoze isn't :-(
> Just to clarify, the reason that MinGW can be a difficult host is
> because the build tools (MSYS) understand posix paths but native MinGW
> binaries do not. This means that you have to be careful that all paths
> that are compiled into binaries/headers (such as in specs or the build
> helper programs like gengtype) are either relative paths or win32 paths
> (c:/foo/bar).
>
>
> It would be a lot easier to instead use Cygwin as the host for a cross
> compiler because you don't have to worry about any of this, as all
> Cygwin binaries understand posix paths so there is none of this
> "cognitive dissonance" between the build system and the actual binaries.
>
Or simply use Linux as the $build system ! At least Debian provides a
Linux-to-MinGW cross-
toolchain as prebuilt just as it provides a Linux-to-Linux native
toolchain... Seemingly also cross-
toolchains for other Debian-supported Linux architectures!
Running text-mode Linux apps made for Debian Linux should succeed also
on other distros, I
once tried the Debian's gcc-3.4 for MinGW on SuSE 9.2 and there was no
problems. The
problem can be with the '.deb' package, one not guessing how to unpack
it. But if we use the
name "archive", the clue is in this. The '.deb' packages are archives
created with 'ar' and in them
are the 'data.tar.gz' packages which everyone should be capable to
unpack somewhere !
I myself have produced hundreds of Cygwin and MinGW-hosted toolchains
but never any of them
on Windoze... IMHO Windoze is both horribly slow (4-6 times slower
being reported many times
by those who have compared Linux and Cygwin) and very "weird" as a
"Unix-like" build platform,
it really isn't "identical with a Unix", not a "plug and play Unix"
like Linux....
But when running binutils, GCC, Insight-GDB, make etc. "compiling and
debugging tools" on
Windoze, one usually don't need to be inside the build factory just as a
car doesn't need to be
used inside the car factory, the plain road may be enough.... So things
like MSYS and Cygwin
can be totally vain.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-20 11:57 ` Brian Dessent
2006-11-20 13:35 ` Kai Ruottu
@ 2006-11-20 14:39 ` Sebastian Ebenbeck
2006-11-21 11:42 ` Brian Dessent
2006-11-21 11:01 ` Sebastian Ebenbeck
2 siblings, 1 reply; 10+ messages in thread
From: Sebastian Ebenbeck @ 2006-11-20 14:39 UTC (permalink / raw)
To: gcc-help
Brian Dessent schrieb:
> Brian Dessent wrote:
>
>
>>> I have read some good informations in the Web and use now a combined
>>> build tree.
>>> So I am able to compile the GCC in Linux now!
>>> Today I tried the same procedure in MinGW and fail.
>>>
>> You need to provide more information. What *exact* configure command
>> are you using, specifically what are you providing for --host, --build,
>> --target, and --prefix? What is the build host, MSYS or Cygwin? Are
>> you providing a relative path to the location of configure or an
>> absolute path?
>>
>>
>>> build/gengtype.exe
>>> /home/seb/combined/gcc/input.h: No such file or directory
>>>
>> Here it looks like you have a mingw program trying to access posix
>> paths. That won't work, mingw programs need to use win32 paths.
>>
>
> Just to clarify, the reason that MinGW can be a difficult host is
> because the build tools (MSYS) understand posix paths but native MinGW
> binaries do not. This means that you have to be careful that all paths
> that are compiled into binaries/headers (such as in specs or the build
> helper programs like gengtype) are either relative paths or win32 paths
> (c:/foo/bar).
>
> In the case above it looks like you've got a gengtype.exe that
> apparently got a posix-style absolute path leaked into it somewhere. So
> you have to ensure that the $srcdir, $builddir, $prefix etc. in the
> Makefile end up as either relative paths or win32 paths. $srcdir gets
> set based on the path used to invoke configure, which is why the
> particulars of how you do this can matter greatly on MinGW.
>
> It would be a lot easier to instead use Cygwin as the host for a cross
> compiler because you don't have to worry about any of this, as all
> Cygwin binaries understand posix paths so there is none of this
> "cognitive dissonance" between the build system and the actual binaries.
>
> Brian
>
>
>
Thank you Brian,
now I am using relative paths. The Compile process runs much longer but
fail again.
Configuration in dir: "/home/seb/build/combined"
Source dir: "/home/seb/combined"
export srcdir=../../combined
export builddir=.
export prefix=../../bin/ppc
../../combined/configure --target=powerpc-405-eabi --with-newlib
--disable-shared --disable-libssp --enable-languages=c,c++
make
...
cat ../../../combined/gcc/config/rs6000/crtsavres.asm >crtsavres.S
/home/seb/build/combined/./gcc/xgcc -B/home/seb/build/combined/./gcc/
-nostdinc -B/home/seb/build/combined/powerpc-405-eabi/newlib/ -isystem
/home/seb/build/combined/powerpc-405-eabi/newlib/targ-include -isystem
/home/seb/combined/newlib/libc/include
-B/usr/local/powerpc-405-eabi/bin/ -B/usr/local/powerpc-405-eabi/lib/
-isystem /usr/local/powerpc-405-eabi/include -isystem
/usr/local/powerpc-405-eabi/sys-include -O2 -g -O2 -DIN_GCC
-DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -isystem ./include -I. -I.
-I../../../combined/gcc -I../../../combined/gcc/.
-I../../../combined/gcc/../include -I./../intl
-I../../../combined/gcc/../libcpp/include -mrelocatable-lib -mno-eabi
-mstrict-align -c crtsavres.S -o crtsavres.o
make[4]: Leaving directory `/home/seb/build/combined/gcc'
/home/seb/build/combined/./gcc/xgcc -B/home/seb/build/combined/./gcc/
-nostdinc -B/home/seb/build/combined/powerpc-405-eabi/newlib/ -isystem
/home/seb/build/combined/powerpc-405-eabi/newlib/targ-include -isystem
/home/seb/combined/newlib/libc/include
-B/usr/local/powerpc-405-eabi/bin/ -B/usr/local/powerpc-405-eabi/lib/
-isystem /usr/local/powerpc-405-eabi/include -isystem
/usr/local/powerpc-405-eabi/sys-include -O2 -O2 -g -O2 -DIN_GCC
-DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -isystem ./include
-specs=ldblspecs -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
-Dinhibit_libc -I. -I -I../../../combined/gcc -I../../../combined/gcc/
-I../../../combined/gcc/../include -I./../intl
-I../../../combined/gcc/../libcpp/include -mrelocatable-lib -mno-eabi
-mstrict-align -DL_muldi3 -c ../../../combined/gcc/libgcc2.c -o
libgcc/./_muldi3.o
In file included from ../../../combined/gcc/libgcc2.c:35:
./tm.h:5:35: error: config/rs6000/rs6000.h: No such file or directory
./tm.h:6:28: error: config/dbxelf.h: No such file or directory
./tm.h:7:27: error: config/elfos.h: No such file or directory
./tm.h:8:26: error: config/svr4.h: No such file or directory
./tm.h:9:34: error: config/freebsd-spec.h: No such file or directory
./tm.h:10:34: error: config/rs6000/sysv4.h: No such file or directory
./tm.h:11:33: error: config/rs6000/eabi.h: No such file or directory
./tm.h:12:23: error: defaults.h: No such file or directory
In file included from ../../../combined/gcc/libgcc2.c:43:
../../../combined/gcc/libgcc2.h:214:3: error: #error "expand the table"
../../../combined/gcc/libgcc2.c: In function '__mulhi3':
../../../combined/gcc/libgcc2.c:514: error: 'BITS_PER_UNIT' undeclared
(first use in this function)
../../../combined/gcc/libgcc2.c:514: error: (Each undeclared identifier
is reported only once
../../../combined/gcc/libgcc2.c:514: error: for each function it appears
in.)
make[3]: *** [libgcc/./_muldi3.o] Error 1
make[3]: Leaving directory `/home/seb/build/combined/gcc'
make[2]: *** [stmp-multilib] Error 2
make[2]: Leaving directory `/home/seb/build/combined/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/home/seb/build/combined'
make: *** [all] Error 2
Result of "ls -l /home/seb/combined/gcc/config/rs6000/rs6000.h"
-rw-r--r-- 2 seb Administ 110375 Apr 13 2006
/home/seb/combined/gcc/config/rs6000/rs6000.h
Is this the same error again?
If yes, how can I make relative paths on configuration?
Sebastian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-20 11:57 ` Brian Dessent
2006-11-20 13:35 ` Kai Ruottu
2006-11-20 14:39 ` Sebastian Ebenbeck
@ 2006-11-21 11:01 ` Sebastian Ebenbeck
2 siblings, 0 replies; 10+ messages in thread
From: Sebastian Ebenbeck @ 2006-11-21 11:01 UTC (permalink / raw)
To: gcc-help
Hello,
I found out something.
The make process try to execute:
/home/seb/build/combined/./gcc/xgcc -B/home/seb/build/combined/./gcc/
-nostdinc -B/home/seb/build/combined/powerpc-405-eabi/newlib/ -isystem
/home/seb/build/combined/powerpc-405-eabi/newlib/targ-include -isystem
/home/seb/combined/newlib/libc/include
-B/usr/local/powerpc-405-eabi/bin/ -B/usr/local/powerpc-405-eabi/lib/
-isystem /usr/local/powerpc-405-eabi/include -isystem
/usr/local/powerpc-405-eabi/sys-include -O2 -O2 -g -O2 -DIN_GCC
-DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -isystem ./include
-specs=ldblspecs -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc
-I. -I -I../../../combined/gcc -I../../../combined/gcc/
-I../../../combined/gcc/../include -I./../intl
-I../../../combined/gcc/../libcpp/include -mrelocatable-lib -mno-eabi
-mstrict-align -DL_muldi3 -c ../../../combined/gcc/libgcc2.c -o
libgcc/./_muldi3.o
This fails because of wrong includes:
-I. -I -I../../../combined/gcc -I../../../combined/gcc/ ...
^
There is a "-I" argument without a Path?
If I try to compile it without the -I argument:
/home/seb/build/combined/./gcc/xgcc -B/home/seb/build/combined/./gcc/
-nostdinc -B/home/seb/build/combined/powerpc-405-e
abi/newlib/ -isystem
/home/seb/build/combined/powerpc-405-eabi/newlib/targ-include -isystem
/home/seb/combined/newlib/libc
/include -BC:/msys/home/seb/bin/ppc/powerpc-405-eabi/bin/
-BC:/msys/home/seb/bin/ppc/powerpc-405-eabi/lib/ -isystem C:/msy
s/home/seb/bin/ppc/powerpc-405-eabi/include -isystem
C:/msys/home/seb/bin/ppc/powerpc-405-eabi/sys-include -O2 -O2 -g -O2
-DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -i
system ./include -specs=ldblspecs -g -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I../../../combined/gcc -
I../../../combined/gcc/ -I../../../combined/gcc/../include -I./../intl
-I../../../combined/gcc/../libcpp/include -mreloca
table-lib -mno-eabi -mstrict-align -DL_muldi3 -c
../../../combined/gcc/libgcc2.c -o libgcc/./_muldi3.o
I get the error:
xgcc.exe: _spawnvp: No such file or directory
I have taken a look into the Makefile and it seams that "libgcc2.c" is
compiled with a wrong set of arguments.
I'm usually writing microcontroller software and I am not very familiar
with such big makefiles.
Can anybody help me, Please?
Sebastian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-20 14:39 ` Sebastian Ebenbeck
@ 2006-11-21 11:42 ` Brian Dessent
2006-11-21 12:05 ` Brian Dessent
0 siblings, 1 reply; 10+ messages in thread
From: Brian Dessent @ 2006-11-21 11:42 UTC (permalink / raw)
To: Sebastian Ebenbeck; +Cc: gcc-help
Sebastian Ebenbeck wrote:
> now I am using relative paths. The Compile process runs much longer but
> fail again.
>
> Configuration in dir: "/home/seb/build/combined"
> Source dir: "/home/seb/combined"
>
> export srcdir=../../combined
> export builddir=.
> export prefix=../../bin/ppc
> ../../combined/configure --target=powerpc-405-eabi --with-newlib
> --disable-shared --disable-libssp --enable-languages=c,c++
> make
That looks wrong. You shouldn't set those in the environment, instead
use --prefix=c:/foo/bar as argument to configure. Same with srcdir, it
should be detected automatically from the configure invocation without
needing to be specified, or it can be supplied explicitly with --srcdir,
but not in the environment.
> In file included from ../../../combined/gcc/libgcc2.c:35:
> ./tm.h:5:35: error: config/rs6000/rs6000.h: No such file or directory
> ./tm.h:6:28: error: config/dbxelf.h: No such file or directory
> ./tm.h:7:27: error: config/elfos.h: No such file or directory
> ./tm.h:8:26: error: config/svr4.h: No such file or directory
> ./tm.h:9:34: error: config/freebsd-spec.h: No such file or directory
> ./tm.h:10:34: error: config/rs6000/sysv4.h: No such file or directory
> ./tm.h:11:33: error: config/rs6000/eabi.h: No such file or directory
> ./tm.h:12:23: error: defaults.h: No such file or directory
This looks like yet another path problem, perhaps relating to srcdir
being set in the environment.
> This fails because of wrong includes:
> -I. -I -I../../../combined/gcc -I../../../combined/gcc/ ...
> ^
> There is a "-I" argument without a Path?
More path woes.
> If I try to compile it without the -I argument:
> /home/seb/build/combined/./gcc/xgcc -B/home/seb/build/combined/./gcc/
> -nostdinc -B/home/seb/build/combined/powerpc-405-e
> abi/newlib/ -isystem
> /home/seb/build/combined/powerpc-405-eabi/newlib/targ-include -isystem
> /home/seb/combined/newlib/libc
> /include -BC:/msys/home/seb/bin/ppc/powerpc-405-eabi/bin/
> -BC:/msys/home/seb/bin/ppc/powerpc-405-eabi/lib/ -isystem C:/msy
> s/home/seb/bin/ppc/powerpc-405-eabi/include -isystem
> C:/msys/home/seb/bin/ppc/powerpc-405-eabi/sys-include -O2 -O2 -g -O2
> -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
> -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -i
> system ./include -specs=ldblspecs -g -DIN_LIBGCC2
> -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I../../../combined/gcc -
> I../../../combined/gcc/ -I../../../combined/gcc/../include -I./../intl
> -I../../../combined/gcc/../libcpp/include -mreloca
> table-lib -mno-eabi -mstrict-align -DL_muldi3 -c
> ../../../combined/gcc/libgcc2.c -o libgcc/./_muldi3.o
>
> I get the error:
> xgcc.exe: _spawnvp: No such file or directory
This is even more of a mess, you've got both style paths mixed together:
-B/foo/bar and -BC:/foo/bar.
> I have taken a look into the Makefile and it seams that "libgcc2.c" is
> compiled with a wrong set of arguments.
>
> I'm usually writing microcontroller software and I am not very familiar
> with such big makefiles.
> Can anybody help me, Please?
It looks like right now you're trying
--host=i686-pc-mingw32 --build=i686-pc-mingw32 --target=powerpc-405-eabi
I suggest that instead you install Cygwin and use that as host for the
toolchain:
--host=i686-pc-cygwin --build=i686-pc-cygwin --target=powerpc-405-eabi
or if you must have a MinGW hosted tool, do a canadian cross from Cygwin
or Linux:
--host=i686-pc-mingw32 --build=i686-pc-linux-gnu
--target=powerpc-405-eabi
If you absolutely have to have to use MinGW for both build and host,
then try invoking configure like so:
`cd /home/seb/combined && pwd -W`/configure --host=i686-pc-mingw32 \
--build=i686-pc-mingw32 \
--target=powerpc-405-eabi \
--prefix=`cd /home/seb/bin/ppc && pwd -W` \
--with-gcc \
--with-gnu-as \
--with-gnu-ld \
--with-newlib \
--disable-shared \
--disable-libssp \
--enable-languages=c,c++
The `cd /posix/path && pwd -W` is the MSYS idiom for getting a win32
path from a posix path. If you use Cygwin or linux for the build system
then you don't have to muck with this because you can just use posix
paths everywhere.
Brian
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Cross Compiler Host MinGW Target PowerPC
2006-11-21 11:42 ` Brian Dessent
@ 2006-11-21 12:05 ` Brian Dessent
0 siblings, 0 replies; 10+ messages in thread
From: Brian Dessent @ 2006-11-21 12:05 UTC (permalink / raw)
To: gcc-help; +Cc: Sebastian Ebenbeck
Brian Dessent wrote:
> `cd /home/seb/combined && pwd -W`/configure
Actually that's probably not a good idea, just use a relative path to
configure instead.
Brian
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2006-11-21 12:05 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-11-10 15:26 Cross Compiler Host MinGW Target PowerPC Sebastian Ebenbeck
2006-11-10 15:48 ` John Love-Jensen
2006-11-20 11:04 ` Sebastian Ebenbeck
2006-11-20 11:39 ` Brian Dessent
2006-11-20 11:57 ` Brian Dessent
2006-11-20 13:35 ` Kai Ruottu
2006-11-20 14:39 ` Sebastian Ebenbeck
2006-11-21 11:42 ` Brian Dessent
2006-11-21 12:05 ` Brian Dessent
2006-11-21 11:01 ` Sebastian Ebenbeck
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).