* Help in cross-compiler
@ 2002-12-18 15:57 Chien-Lung Wu
2002-12-18 17:33 ` Brad Barrett
2002-12-19 1:52 ` ??
0 siblings, 2 replies; 5+ messages in thread
From: Chien-Lung Wu @ 2002-12-18 15:57 UTC (permalink / raw)
To: 'linux-mips@linux-mips.org'; +Cc: Chien-Lung Wu
Hi,
I am working on the embedded linux system on bug endian mips (mips-linux).
As I understand, I need to get the cross-compiler work on my linux-i686 host
(redhat 7.2).
Following the Bradly's "Building a modern MIPS cross-toolchain for linux",
I download following packages:
binutils-2.11
gcc-2.95
glibc-2.2.5
glibc-linuxthreads-2.2.5
And following the procedue:
1. build the cross-binutils
tar -xzf binutils-2.11.tar.gz
mkdir mips-binutils-2.11
cd mips-binutils-2.11
../binutils-2.11/configure --target=mips-linux \
--prefix=/usr/toolchain-mips
--libdir='${exec_prefix}'/mips-linux/i386-linux-lib
make
make install
cd ..
Everything is fine.
2. build the C cross-compiler
tar -xzf gcc-2.95.tar.gz
mkdir mips-gcc-2.95
cd mips-gcc-2.95
../gcc-2.95/configure --target=mips-linux
--prefix=/usr/toolchain-mips --enable-languages=c \
--disable-shared --with-headers=/usr/include
make
make install
cd ..
As thw warning, The --with-headers causes configure to make a copy of the
headers at the specified location into /usr/local/mipsel-linux/sys-includes
and to run fixincludes on them. These headers are then used by xgcc during
the cross-building of libgcc.a (which is part of building the static C
compiler). This means that you'll need some MIPS host headers laying around
somewhere, including the linux and asm subdirectories from the Linux kernel.
Maybe you have them from your previous cross-compiler installation. If not,
there are various creative ways of obtaining them, including grabbing them
from some MIPS distribution. There is also the dubious hack of using your
hosts's headers (--with-headers=/usr/include) instead. The key word here is
"dubious"; you have been warned.
Since I can not get "some MIPS host headers", I use the dubious hack.
And it seems get the build of C cross-compiler work.
3. Cross-build glibc
tar -xzf glibc.tar.gz
cd glibc
patch -i ../glibc-2.2.5-mips-build-gmon.diff
tar -xzf ../glibc-linuxthreads.tar.gz
cd ..
mkdir mipsel-glibc
cd mipsel-glibc
CFLAGS="-O2 -g -finline-limit=10000" ../glibc/configure
--host=i686-linux\
--enable-add-ons --prefix=/usr
make
make install install_root=/usr/local/mips-linux/glibc
cd ..
cp -a /usr/local/mips-linux/glibc/lib/*
/usr/toolchain/mips-linux/lib/
cp -a /usr/local/mips-linux/glibc/usr/include/*
/usr/toolchain/mips-linux/include/
cp -a /usr/local/mips-linux/glibc/usr/lib/*
/usr/toolchain/mips-linux/lib/
GROUP ( /usr/toolchain/mips-linux/lib/libc.so.6
/usr/toolchain/mipsel-linux/lib/libc_nonshared.a )
It works fine!
4. Build the final C and C++ cross-compilers
cd mipsel-gcc
../gcc/configure --target=mipsel-linux prefic=/usr/toolchain
--enable-languages=c,c++
make
make install
However, I got the error_message:
home/cross-compiler1/mips-gcc-2.95/gcc/xgcc
-B/home/cross-compiler1/mips-gcc-2.95/gcc/
-B/usr/toolchain1-mips/mips-linux/bin/ -c -g -O2 -fvtable-thunks
-D_GNU_SOURCE
-fno-implicit-templates -I../../../gcc-2.95/libstdc++
-I../../../gcc-2.95/libstdc++/stl -I../libio
-I../../../gcc-2.95/libstdc++/../libio -nostdinc++ -D_IO_MTSAFE_IO
../../../gcc-2.95/libstdc++/cmathi.cc
In file included from
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/math.h:350,
from ../../../gcc-2.95/libstdc++/cmath:7,
from ../../../gcc-2.95/libstdc++/cmathi.cc:7:
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `double atan2(double, double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:426:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `float atan2f(float, float)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:426:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long double atan2l(long double, long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:426:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long double __atan2l(long double, long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:427:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `double fmod(double, double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:430:
unknown register name `ax' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `float fmodf(float, float)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:430:
unknown register name `ax' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long double fmodl(long double, long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:430:
unknown register name `ax' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `double atan(double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:467:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `float atanf(float)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:467:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long double atanl(long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:467:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `double log1p(double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:540:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `float log1pf(float)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:540:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long double log1pl(long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:540:
unknown register name `st(1)' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long int lrintf(float)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:611:
unknown register name `st' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long int lrint(double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:616:
unknown register name `st' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long int lrintl(long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:621:
unknown register name `st' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long long int llrintf(float)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:634:
unknown register name `st' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long long int llrint(double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:639:
unknown register name `st' in `asm'
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:
In function `long long int llrintl(long double)':
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
include/bits/mathinline.h:644:
unknown register name `st' in `asm'
make[1]: *** [cmathi.o] Error 1
make[1]: Leaving directory
`/home/cross-compiler1/mips-gcc-2.95/mips-linux/libstdc++'
make: *** [all-target-libstdc++] Error 2
Does any have any idea to fix this error?
When I build the C cross-compiler, I use the "dubious hack"
--with-headers=/usr/include copy the "MIPS host header files". Are there any
other ways to copy the MIPS-host headers?
Thanks for your help.
Chien-Lung
^ permalink raw reply [flat|nested] 5+ messages in thread* RE: Help in cross-compiler
@ 2002-12-18 17:33 ` Brad Barrett
0 siblings, 0 replies; 5+ messages in thread
From: Brad Barrett @ 2002-12-18 17:33 UTC (permalink / raw)
To: Chien-Lung Wu, linux-mips
On Wednesday 18 December 2002 10:57 am, you wrote:
> I am working on the embedded linux system on bug endian mips (mips-linux).
> As I understand, I need to get the cross-compiler work on my linux-i686
> host (redhat 7.2).
> Following the Bradly's "Building a modern MIPS cross-toolchain for linux",
> I download following packages:
>
> binutils-2.11
> gcc-2.95
> glibc-2.2.5
> glibc-linuxthreads-2.2.5
>
> And following the procedue:
...
> However, I got the error_message:
...
> /usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys
>- include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
...
> Does any have any idea to fix this error?
It sounds like you used the standard binutils. You should probably use H.J.
Lu's binutils (they have some MIPS patches applied), and also his gcc (same
story). They're available at:
http://ftp.kernel.org/pub/linux/devel/binutils/
ftp://ftp.linux-mips.org/pub/linux/mips/redhat/7.3/test/
> When I build the C cross-compiler, I use the "dubious hack"
> --with-headers=/usr/include copy the "MIPS host header files". Are there
> any other ways to copy the MIPS-host headers?
I never understood why anyone would use this method. If you're building a
mips-linux cross-compiler, you should have a copy of the Linux kernel source
from linux-mips.org lying around somewhere (or are you using a pre-compiled
kernel image?). Just copy the include directory from this source to a
convenient location, symbolically link asm to asm-mips and point the gcc
configure to it.
I've included below my personal build notes from a mipsel (little-endian)
cross-toolchain I built a couple months ago. Hopefully these will be helpful.
Note that I chose /opt/toolchains/mips for the installed path, rather than
/usr/local. My build system was SuSE 7.2 (gcc version 2.95.3 20010315 (SuSE)
and binutils version 2.10.91).
Also, you don't mention applying the glibc-2.2.5-mips-build-gmon.diff patch that
Brad LaRonde recommends. If you didn't apply this patch, you might also want to
do that.
Brad
----------------Build Notes------------------------------------
I relied primarily on Steven J. Hill's build script [SJH], but with several
adjustments.
H.J. Lu says only his binutils will work:
http://ftp.kernel.org/pub/linux/devel/binutils/
I got the latest version.
H.J. Lu also says to use his gcc 3.2. This is available only in source rpm
format, at:
ftp://ftp.linux-mips.org/pub/linux/mips/redhat/7.3/test/
Glibc came from the standard location:
ftp://ftp.gnu.org/gnu/glibc/
*Except*...patched with "glibc-2.2.5-mips-build-gmon.diff" from [BDL2.4].
This source also recommends the "-finline-limit=10000" CFLAG value (claims
ld.so won't work without it, and this seems to be true).
Tool versions:
Binutils v2.13.90.0.10 (H.J. Lu)
GCC v3.2 (H.J. Lu)
Glibc v2.2.5
Glibc-linuxthreads v2.2.5
Patch:
glibc-2.2.5-mips-build-gmon.diff
(http://www.ltc.com/~brad/mips/glibc-2.2.5-mips-build-gmon.diff)
-------------------------
Build Log
-------------------------
[Implied "su" to root prior to each "make install" below.]
1. Downloaded tarballs/rpms and unpacked to:
~/mipsel-cross/binutils-2.13
~/mipsel-cross/gcc-3.2
~/mipsel-cross/glibc-2.2.5
(linuxthreads is unpacked into the glibc-2.2.5 directory)
2. Binutils:
cd ~/mipsel-cross/binutils-2.13/mips
chmod 744 README
cd ..
./mips/README (apply HJ Lu's patches)
mkdir ~/mipsel-cross/mipsel-binutils
cd ~/mipsel-cross/mipsel-binutils
../binutils-2.13/configure --prefix=/opt/toolchains/mips \
--enable-targets=mips64el-linux,mipsel-linux --target=mipsel-linux \
--enable-shared
make
make install
3. Gcc (1st time)
cp -R ~/linux-2.4/include/asm-mips /opt/toolchains/mips/mipsel-linux/include
cp -R ~/linux-2.4/include/linux /opt/toolchains/mips/mipsel-linux/include
cd /opt/toolchains/mips/mipsel-linux/include
ln -s asm-mips asm
mkdir ~/mipsel-cross/mipsel-gcc
cd ~/mipsel-cross/mipsel-gcc
AR=mipsel-linux-ar RANLIB=mipsel-linux-ranlib ../gcc-3.2/configure \
--prefix=/opt/toolchains/mips --with-newlib --enable-languages=c \
--target=mipsel-linux --disable-shared --disable-threads
make
make install
4. Glibc
cd ~/mipsel-cross/glibc-2.2.5
patch -p1 -i ../glibc-2.2.5-mips-build-gmon.diff
(patch asked for name of each file to patch...had to type them in)
mkdir ~/mipsel-cross/mipsel-glibc
cd ~/mipsel-cross/mipsel-glibc
CFLAGS="-O2 -g -finline-limit=10000" LD_LIBRARY_PATH= \
BUILD_CC=gcc CC=mipsel-linux-gcc AR=mipsel-linux-ar AS=mipsel-linux-as \
RANLIB=mipsel-linux-ranlib ../glibc-2.2.5/configure \
--prefix=/opt/toolchains/mips/mipsel-linux --host=mipsel-linux \
--build=i686-pc-linux-gnu --enable-add-ons --with-elf \
--disable-profile \
--with-headers=/opt/toolchains/mips/mipsel-linux/include \
--mandir=/opt/toolchains/mips/man --infodir=/opt/toolchains/mips/info \
--enable-kernel=2.4.0
make
make install
5. Gcc (2nd time - with full glibc support)
mkdir ~/mipsel-cross/mipsel-gccfull
cd ~/mipsel-cross/mipsel-gccfull
AR=mipsel-linux-ar RANLIB=mipsel-linux-ranlib ../gcc-3.2/configure \
--prefix=/opt/toolchains/mips --enable-languages=c,c++ \
--target=mipsel-linux --enable-shared --enable-threads \
--includedir=/opt/toolchains/mips/mipsel-linux/include \
--with-gxx-include-dir=/opt/toolchains/mips/mipsel-linux/include \
--mandir=/opt/toolchains/mips/man --infodir=/opt/toolchains/mips/info \
--disable-checking
make
make install
Sources:
--------
[BDL2.4] LaRonde, Bradley D., "Building a Modern MIPS Cross-Toolchain for
Linux", v2.4, 2002-09-25,
http://www.ltc.com/~brad/mips/mips-cross-toolchain.html
[SJH]
ftp://ftp.cotw.com/Linux/MIPS/toolchain/stable/sources/mipsel-linux-toolchain-bu
ild.sh
----------------End Build Notes--------------------------------
--
Brad Barrett
Staff Engineer, Patton Electronics
brad@patton.com
^ permalink raw reply [flat|nested] 5+ messages in thread* RE: Help in cross-compiler
@ 2002-12-18 17:33 ` Brad Barrett
0 siblings, 0 replies; 5+ messages in thread
From: Brad Barrett @ 2002-12-18 17:33 UTC (permalink / raw)
To: Chien-Lung Wu, linux-mips
On Wednesday 18 December 2002 10:57 am, you wrote:
> I am working on the embedded linux system on bug endian mips (mips-linux).
> As I understand, I need to get the cross-compiler work on my linux-i686
> host (redhat 7.2).
> Following the Bradly's "Building a modern MIPS cross-toolchain for linux",
> I download following packages:
>
> binutils-2.11
> gcc-2.95
> glibc-2.2.5
> glibc-linuxthreads-2.2.5
>
> And following the procedue:
...
> However, I got the error_message:
...
> /usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys
>- include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
...
> Does any have any idea to fix this error?
It sounds like you used the standard binutils. You should probably use H.J.
Lu's binutils (they have some MIPS patches applied), and also his gcc (same
story). They're available at:
http://ftp.kernel.org/pub/linux/devel/binutils/
ftp://ftp.linux-mips.org/pub/linux/mips/redhat/7.3/test/
> When I build the C cross-compiler, I use the "dubious hack"
> --with-headers=/usr/include copy the "MIPS host header files". Are there
> any other ways to copy the MIPS-host headers?
I never understood why anyone would use this method. If you're building a
mips-linux cross-compiler, you should have a copy of the Linux kernel source
from linux-mips.org lying around somewhere (or are you using a pre-compiled
kernel image?). Just copy the include directory from this source to a
convenient location, symbolically link asm to asm-mips and point the gcc
configure to it.
I've included below my personal build notes from a mipsel (little-endian)
cross-toolchain I built a couple months ago. Hopefully these will be helpful.
Note that I chose /opt/toolchains/mips for the installed path, rather than
/usr/local. My build system was SuSE 7.2 (gcc version 2.95.3 20010315 (SuSE)
and binutils version 2.10.91).
Also, you don't mention applying the glibc-2.2.5-mips-build-gmon.diff patch that
Brad LaRonde recommends. If you didn't apply this patch, you might also want to
do that.
Brad
----------------Build Notes------------------------------------
I relied primarily on Steven J. Hill's build script [SJH], but with several
adjustments.
H.J. Lu says only his binutils will work:
http://ftp.kernel.org/pub/linux/devel/binutils/
I got the latest version.
H.J. Lu also says to use his gcc 3.2. This is available only in source rpm
format, at:
ftp://ftp.linux-mips.org/pub/linux/mips/redhat/7.3/test/
Glibc came from the standard location:
ftp://ftp.gnu.org/gnu/glibc/
*Except*...patched with "glibc-2.2.5-mips-build-gmon.diff" from [BDL2.4].
This source also recommends the "-finline-limit=10000" CFLAG value (claims
ld.so won't work without it, and this seems to be true).
Tool versions:
Binutils v2.13.90.0.10 (H.J. Lu)
GCC v3.2 (H.J. Lu)
Glibc v2.2.5
Glibc-linuxthreads v2.2.5
Patch:
glibc-2.2.5-mips-build-gmon.diff
(http://www.ltc.com/~brad/mips/glibc-2.2.5-mips-build-gmon.diff)
-------------------------
Build Log
-------------------------
[Implied "su" to root prior to each "make install" below.]
1. Downloaded tarballs/rpms and unpacked to:
~/mipsel-cross/binutils-2.13
~/mipsel-cross/gcc-3.2
~/mipsel-cross/glibc-2.2.5
(linuxthreads is unpacked into the glibc-2.2.5 directory)
2. Binutils:
cd ~/mipsel-cross/binutils-2.13/mips
chmod 744 README
cd ..
./mips/README (apply HJ Lu's patches)
mkdir ~/mipsel-cross/mipsel-binutils
cd ~/mipsel-cross/mipsel-binutils
../binutils-2.13/configure --prefix=/opt/toolchains/mips \
--enable-targets=mips64el-linux,mipsel-linux --target=mipsel-linux \
--enable-shared
make
make install
3. Gcc (1st time)
cp -R ~/linux-2.4/include/asm-mips /opt/toolchains/mips/mipsel-linux/include
cp -R ~/linux-2.4/include/linux /opt/toolchains/mips/mipsel-linux/include
cd /opt/toolchains/mips/mipsel-linux/include
ln -s asm-mips asm
mkdir ~/mipsel-cross/mipsel-gcc
cd ~/mipsel-cross/mipsel-gcc
AR=mipsel-linux-ar RANLIB=mipsel-linux-ranlib ../gcc-3.2/configure \
--prefix=/opt/toolchains/mips --with-newlib --enable-languages=c \
--target=mipsel-linux --disable-shared --disable-threads
make
make install
4. Glibc
cd ~/mipsel-cross/glibc-2.2.5
patch -p1 -i ../glibc-2.2.5-mips-build-gmon.diff
(patch asked for name of each file to patch...had to type them in)
mkdir ~/mipsel-cross/mipsel-glibc
cd ~/mipsel-cross/mipsel-glibc
CFLAGS="-O2 -g -finline-limit=10000" LD_LIBRARY_PATH= \
BUILD_CC=gcc CC=mipsel-linux-gcc AR=mipsel-linux-ar AS=mipsel-linux-as \
RANLIB=mipsel-linux-ranlib ../glibc-2.2.5/configure \
--prefix=/opt/toolchains/mips/mipsel-linux --host=mipsel-linux \
--build=i686-pc-linux-gnu --enable-add-ons --with-elf \
--disable-profile \
--with-headers=/opt/toolchains/mips/mipsel-linux/include \
--mandir=/opt/toolchains/mips/man --infodir=/opt/toolchains/mips/info \
--enable-kernel=2.4.0
make
make install
5. Gcc (2nd time - with full glibc support)
mkdir ~/mipsel-cross/mipsel-gccfull
cd ~/mipsel-cross/mipsel-gccfull
AR=mipsel-linux-ar RANLIB=mipsel-linux-ranlib ../gcc-3.2/configure \
--prefix=/opt/toolchains/mips --enable-languages=c,c++ \
--target=mipsel-linux --enable-shared --enable-threads \
--includedir=/opt/toolchains/mips/mipsel-linux/include \
--with-gxx-include-dir=/opt/toolchains/mips/mipsel-linux/include \
--mandir=/opt/toolchains/mips/man --infodir=/opt/toolchains/mips/info \
--disable-checking
make
make install
Sources:
--------
[BDL2.4] LaRonde, Bradley D., "Building a Modern MIPS Cross-Toolchain for
Linux", v2.4, 2002-09-25,
http://www.ltc.com/~brad/mips/mips-cross-toolchain.html
[SJH]
ftp://ftp.cotw.com/Linux/MIPS/toolchain/stable/sources/mipsel-linux-toolchain-bu
ild.sh
----------------End Build Notes--------------------------------
--
Brad Barrett
Staff Engineer, Patton Electronics
brad@patton.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Help in cross-compiler
@ 2002-12-19 1:52 ` ??
0 siblings, 0 replies; 5+ messages in thread
From: ?? @ 2002-12-19 1:52 UTC (permalink / raw)
To: Chien-Lung Wu, linux-mips; +Cc: Chien-Lung Wu
hi, chienlung,
try this when prepareing header:
rm -rf $PREFIX/mips-linux/include
mkdir -p $PREFIX/mips-linux/include
rm -rf $PREFIX/mips-linux/include/linux
rm -rf $PREFIX/mips-linux/include/asm-mips
rm -rf $PREFIX/mips-linux/include/asm
cp -af ./linuxmips-2.4.x/include/linux $PREFIX/mips-linux/include
cp -af ./linuxmips-2.4.x/include/asm-mips $PREFIX/mips-linux/include
ln -sf $PREFIX/mips-linux/include/asm-mips $PREFIX/mips-linux/include/asm
(linuxmips-2.4.x is the source of your mips-linux kernel)
in your message, i see register "ax" which is a x86 register
which means you are using x86 header when building compiler that will
generate mips code
this is of course incorrect
/usr/include/asm & /usr/include/linux normally linked to
/usr/src/linux/include/asm & /usr/src/linux/include/linux
and /usr/src/linux is normally linked to x86 kernel source on pc
best regards,
----- Original Message -----
From: "Chien-Lung Wu" <cwu@deltartp.com>
To: <linux-mips@linux-mips.org>
Cc: "Chien-Lung Wu" <cwu@deltartp.com>
Sent: Wednesday, December 18, 2002 11:57 PM
Subject: Help in cross-compiler
> Hi,
>
> I am working on the embedded linux system on bug endian mips (mips-linux).
> As I understand, I need to get the cross-compiler work on my linux-i686
host
> (redhat 7.2).
> Following the Bradly's "Building a modern MIPS cross-toolchain for linux",
> I download following packages:
>
> binutils-2.11
> gcc-2.95
> glibc-2.2.5
> glibc-linuxthreads-2.2.5
>
> And following the procedue:
> 1. build the cross-binutils
> tar -xzf binutils-2.11.tar.gz
>
> mkdir mips-binutils-2.11
> cd mips-binutils-2.11
>
> ../binutils-2.11/configure --target=mips-linux \
> --prefix=/usr/toolchain-mips
>
> --libdir='${exec_prefix}'/mips-linux/i386-linux-lib
>
> make
> make install
> cd ..
>
> Everything is fine.
>
> 2. build the C cross-compiler
>
> tar -xzf gcc-2.95.tar.gz
> mkdir mips-gcc-2.95
> cd mips-gcc-2.95
>
> ../gcc-2.95/configure --target=mips-linux
> --prefix=/usr/toolchain-mips --enable-languages=c \
> --disable-shared --with-headers=/usr/include
>
>
> make
> make install
> cd ..
>
> As thw warning, The --with-headers causes configure to make a copy of the
> headers at the specified location into
/usr/local/mipsel-linux/sys-includes
> and to run fixincludes on them. These headers are then used by xgcc during
> the cross-building of libgcc.a (which is part of building the static C
> compiler). This means that you'll need some MIPS host headers laying
around
> somewhere, including the linux and asm subdirectories from the Linux
kernel.
> Maybe you have them from your previous cross-compiler installation. If
not,
> there are various creative ways of obtaining them, including grabbing them
> from some MIPS distribution. There is also the dubious hack of using your
> hosts's headers (--with-headers=/usr/include) instead. The key word here
is
> "dubious"; you have been warned.
> Since I can not get "some MIPS host headers", I use the dubious hack.
> And it seems get the build of C cross-compiler work.
> 3. Cross-build glibc
> tar -xzf glibc.tar.gz
> cd glibc
> patch -i ../glibc-2.2.5-mips-build-gmon.diff
> tar -xzf ../glibc-linuxthreads.tar.gz
> cd ..
> mkdir mipsel-glibc
> cd mipsel-glibc
>
> CFLAGS="-O2 -g -finline-limit=10000" ../glibc/configure
> --host=i686-linux\
> --enable-add-ons --prefix=/usr
>
> make
> make install install_root=/usr/local/mips-linux/glibc
> cd ..
>
> cp -a /usr/local/mips-linux/glibc/lib/*
> /usr/toolchain/mips-linux/lib/
> cp -a /usr/local/mips-linux/glibc/usr/include/*
> /usr/toolchain/mips-linux/include/
> cp -a /usr/local/mips-linux/glibc/usr/lib/*
> /usr/toolchain/mips-linux/lib/
>
> GROUP ( /usr/toolchain/mips-linux/lib/libc.so.6
> /usr/toolchain/mipsel-linux/lib/libc_nonshared.a )
>
> It works fine!
>
> 4. Build the final C and C++ cross-compilers
> cd mipsel-gcc
> ../gcc/configure --target=mipsel-linux prefic=/usr/toolchain
> --enable-languages=c,c++
> make
> make install
>
>
> However, I got the error_message:
>
> home/cross-compiler1/mips-gcc-2.95/gcc/xgcc
> -B/home/cross-compiler1/mips-gcc-2.95/gcc/
> -B/usr/toolchain1-mips/mips-linux/bin/ -c -g -O2 -fvtable-thunks
> -D_GNU_SOURCE
> -fno-implicit-templates -I../../../gcc-2.95/libstdc++
> -I../../../gcc-2.95/libstdc++/stl -I../libio
> -I../../../gcc-2.95/libstdc++/../libio -nostdinc++ -D_IO_MTSAFE_IO
> ../../../gcc-2.95/libstdc++/cmathi.cc
> In file included from
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/math.h:350,
> from ../../../gcc-2.95/libstdc++/cmath:7,
> from ../../../gcc-2.95/libstdc++/cmathi.cc:7:
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double atan2(double, double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float atan2f(float, float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double atan2l(long double, long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double __atan2l(long double, long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:427:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double fmod(double, double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:430:
> unknown register name `ax' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float fmodf(float, float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:430:
> unknown register name `ax' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double fmodl(long double, long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:430:
> unknown register name `ax' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double atan(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:467:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float atanf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:467:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double atanl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:467:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double log1p(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:540:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float log1pf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:540:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double log1pl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:540:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long int lrintf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:611:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long int lrint(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:616:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long int lrintl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:621:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long long int llrintf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:634:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long long int llrint(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:639:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long long int llrintl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:644:
> unknown register name `st' in `asm'
> make[1]: *** [cmathi.o] Error 1
> make[1]: Leaving directory
> `/home/cross-compiler1/mips-gcc-2.95/mips-linux/libstdc++'
> make: *** [all-target-libstdc++] Error 2
>
> Does any have any idea to fix this error?
> When I build the C cross-compiler, I use the "dubious hack"
> --with-headers=/usr/include copy the "MIPS host header files". Are there
any
> other ways to copy the MIPS-host headers?
> Thanks for your help.
>
> Chien-Lung
>
>
>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: Help in cross-compiler
@ 2002-12-19 1:52 ` ??
0 siblings, 0 replies; 5+ messages in thread
From: ?? @ 2002-12-19 1:52 UTC (permalink / raw)
To: Chien-Lung Wu, linux-mips
hi, chienlung,
try this when prepareing header:
rm -rf $PREFIX/mips-linux/include
mkdir -p $PREFIX/mips-linux/include
rm -rf $PREFIX/mips-linux/include/linux
rm -rf $PREFIX/mips-linux/include/asm-mips
rm -rf $PREFIX/mips-linux/include/asm
cp -af ./linuxmips-2.4.x/include/linux $PREFIX/mips-linux/include
cp -af ./linuxmips-2.4.x/include/asm-mips $PREFIX/mips-linux/include
ln -sf $PREFIX/mips-linux/include/asm-mips $PREFIX/mips-linux/include/asm
(linuxmips-2.4.x is the source of your mips-linux kernel)
in your message, i see register "ax" which is a x86 register
which means you are using x86 header when building compiler that will
generate mips code
this is of course incorrect
/usr/include/asm & /usr/include/linux normally linked to
/usr/src/linux/include/asm & /usr/src/linux/include/linux
and /usr/src/linux is normally linked to x86 kernel source on pc
best regards,
----- Original Message -----
From: "Chien-Lung Wu" <cwu@deltartp.com>
To: <linux-mips@linux-mips.org>
Cc: "Chien-Lung Wu" <cwu@deltartp.com>
Sent: Wednesday, December 18, 2002 11:57 PM
Subject: Help in cross-compiler
> Hi,
>
> I am working on the embedded linux system on bug endian mips (mips-linux).
> As I understand, I need to get the cross-compiler work on my linux-i686
host
> (redhat 7.2).
> Following the Bradly's "Building a modern MIPS cross-toolchain for linux",
> I download following packages:
>
> binutils-2.11
> gcc-2.95
> glibc-2.2.5
> glibc-linuxthreads-2.2.5
>
> And following the procedue:
> 1. build the cross-binutils
> tar -xzf binutils-2.11.tar.gz
>
> mkdir mips-binutils-2.11
> cd mips-binutils-2.11
>
> ../binutils-2.11/configure --target=mips-linux \
> --prefix=/usr/toolchain-mips
>
> --libdir='${exec_prefix}'/mips-linux/i386-linux-lib
>
> make
> make install
> cd ..
>
> Everything is fine.
>
> 2. build the C cross-compiler
>
> tar -xzf gcc-2.95.tar.gz
> mkdir mips-gcc-2.95
> cd mips-gcc-2.95
>
> ../gcc-2.95/configure --target=mips-linux
> --prefix=/usr/toolchain-mips --enable-languages=c \
> --disable-shared --with-headers=/usr/include
>
>
> make
> make install
> cd ..
>
> As thw warning, The --with-headers causes configure to make a copy of the
> headers at the specified location into
/usr/local/mipsel-linux/sys-includes
> and to run fixincludes on them. These headers are then used by xgcc during
> the cross-building of libgcc.a (which is part of building the static C
> compiler). This means that you'll need some MIPS host headers laying
around
> somewhere, including the linux and asm subdirectories from the Linux
kernel.
> Maybe you have them from your previous cross-compiler installation. If
not,
> there are various creative ways of obtaining them, including grabbing them
> from some MIPS distribution. There is also the dubious hack of using your
> hosts's headers (--with-headers=/usr/include) instead. The key word here
is
> "dubious"; you have been warned.
> Since I can not get "some MIPS host headers", I use the dubious hack.
> And it seems get the build of C cross-compiler work.
> 3. Cross-build glibc
> tar -xzf glibc.tar.gz
> cd glibc
> patch -i ../glibc-2.2.5-mips-build-gmon.diff
> tar -xzf ../glibc-linuxthreads.tar.gz
> cd ..
> mkdir mipsel-glibc
> cd mipsel-glibc
>
> CFLAGS="-O2 -g -finline-limit=10000" ../glibc/configure
> --host=i686-linux\
> --enable-add-ons --prefix=/usr
>
> make
> make install install_root=/usr/local/mips-linux/glibc
> cd ..
>
> cp -a /usr/local/mips-linux/glibc/lib/*
> /usr/toolchain/mips-linux/lib/
> cp -a /usr/local/mips-linux/glibc/usr/include/*
> /usr/toolchain/mips-linux/include/
> cp -a /usr/local/mips-linux/glibc/usr/lib/*
> /usr/toolchain/mips-linux/lib/
>
> GROUP ( /usr/toolchain/mips-linux/lib/libc.so.6
> /usr/toolchain/mipsel-linux/lib/libc_nonshared.a )
>
> It works fine!
>
> 4. Build the final C and C++ cross-compilers
> cd mipsel-gcc
> ../gcc/configure --target=mipsel-linux prefic=/usr/toolchain
> --enable-languages=c,c++
> make
> make install
>
>
> However, I got the error_message:
>
> home/cross-compiler1/mips-gcc-2.95/gcc/xgcc
> -B/home/cross-compiler1/mips-gcc-2.95/gcc/
> -B/usr/toolchain1-mips/mips-linux/bin/ -c -g -O2 -fvtable-thunks
> -D_GNU_SOURCE
> -fno-implicit-templates -I../../../gcc-2.95/libstdc++
> -I../../../gcc-2.95/libstdc++/stl -I../libio
> -I../../../gcc-2.95/libstdc++/../libio -nostdinc++ -D_IO_MTSAFE_IO
> ../../../gcc-2.95/libstdc++/cmathi.cc
> In file included from
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/math.h:350,
> from ../../../gcc-2.95/libstdc++/cmath:7,
> from ../../../gcc-2.95/libstdc++/cmathi.cc:7:
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double atan2(double, double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float atan2f(float, float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double atan2l(long double, long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:426:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double __atan2l(long double, long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:427:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double fmod(double, double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:430:
> unknown register name `ax' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float fmodf(float, float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:430:
> unknown register name `ax' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double fmodl(long double, long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:430:
> unknown register name `ax' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double atan(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:467:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float atanf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:467:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double atanl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:467:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `double log1p(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:540:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `float log1pf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:540:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long double log1pl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:540:
> unknown register name `st(1)' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long int lrintf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:611:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long int lrint(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:616:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long int lrintl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:621:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long long int llrintf(float)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:634:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long long int llrint(double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:639:
> unknown register name `st' in `asm'
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:
> In function `long long int llrintl(long double)':
>
>
/usr/toolchain1-mips/lib/gcc-lib/mips-linux/2.95/../../../../mips-linux/sys-
> include/bits/mathinline.h:644:
> unknown register name `st' in `asm'
> make[1]: *** [cmathi.o] Error 1
> make[1]: Leaving directory
> `/home/cross-compiler1/mips-gcc-2.95/mips-linux/libstdc++'
> make: *** [all-target-libstdc++] Error 2
>
> Does any have any idea to fix this error?
> When I build the C cross-compiler, I use the "dubious hack"
> --with-headers=/usr/include copy the "MIPS host header files". Are there
any
> other ways to copy the MIPS-host headers?
> Thanks for your help.
>
> Chien-Lung
>
>
>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2002-12-19 1:52 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-12-18 15:57 Help in cross-compiler Chien-Lung Wu
2002-12-18 17:33 ` Brad Barrett
2002-12-18 17:33 ` Brad Barrett
2002-12-19 1:52 ` ??
2002-12-19 1:52 ` ??
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.