4.8 cross compiler help needed
NeonJohn
jgd@neon-john.com
Fri Apr 19 21:09:00 GMT 2013
first off I'd like to think you and Kai and the others who have been
helping me with this problem. IT is very much appreciated
On 04/18/2013 01:28 PM, Ian Lance Taylor wrote:
> GCC and the binutils are designed to work together, such that if you
> configure both with the same --prefix option GCC will use the binutils
> assembler. Unfortunately I do not know of a way to tell GCC to use a
> arm-linux-gnueabi-as assembler.
>
>> If that doesn't work could you point me in the right direction for
>> building the assembler? That's totally uncharted waters for me.
>> Googling didn't help much.
>
> Download a GNU binutils release and see binutils/README. It's pretty
> much the same as building GCC. Just make sure to use the same
> --prefix and --target options for both GCC and the binutils.
OK, I dowloaded and successfully built the current edition binutils.
"make install" put them in /usr/arm-angstrom-linux-gnueabi/bin and
/usr/arm-angstrom-linux-gnueabi/binutils.
I used this as the configure command line for the binutils.
./configure
--build=i686-linux-gnu
--host=i686-linux-gnu
--target=arm-angstrom-linux-gnueabi
--prefix=/usr/arm-angstrom-linux-gnueabi-binutils
--exec-prefix=/usr/arm-angstrom-linux-gnueabi-bin/utils
--with-build-sysroot=/tmp/arm
--program-prefix=arm-angstrom-linux-gnueabi-binutils
--program-suffix=-2.23.2
--disable-werror
(I broke them out into individual lines to make it easier to read.
I am now trying to use Kai's configure command line
./configure
--build=i686-linux-gnu
--host=i686-linux-gnu
--target=arm-angstrom-linux-gnueabi
--prefix=/usr/arm-angstrom-linux-gnueabi
--exec-prefix=/usr/arm-angstrom-linux-gnueabi
--with-build-sysroot=/tmp/arm
--libdir=/usr/arm-angstrom-linux-gnueabi/lib
--libexecdir=/usr/arm-angstrom-linux-gnueabi/lib
--enable-languages=c,c++
--enable-c99
--enable-long-long
--enable-symvers=gnu
--enable-libstdcxx-pch
--enable-__cxa_atexit
--enable-shared
--enable-threads=posix
--enable-target-optspace
--enable-lto
--enable-libssp
--enable-cheaders=c_global
--enable-version-specific-runtime-libs
--with-linker-hash-style=gnu
--with-ppl=no
--with-cloog=no
--with-gxx-include-dir=/opt/cross/include/c++/4.8.0
--disable-silent-rules
--disable-dependency-tracking
--disable-nls
--disable-libgomp
--disable-libmudflap
--disable-multilib
--program-prefix=arm-angstrom-linux-gnueabi-
--program-suffix=-4.8
Slightly modified to: (I tried it unchanged to begin with)
./configure
--build=i686-linux-gnu
--host=i686-linux-gnu
--target=arm-angstrom-linux-gnueabi
--prefix=/usr/arm-angstrom-linux-gnueabi
--exec-prefix=/usr/arm-angstrom-linux-gnueabi
--with-build-sysroot=/tmp/arm
--libdir=/usr/arm-angstrom-linux-gnueabi/lib
--libexecdir=/usr/arm-angstrom-linux-gnueabi/lib
--enable-languages=c,c++
--enable-c99
--enable-long-long
--enable-symvers=gnu
--enable-libstdcxx-pch
--enable-__cxa_atexit
--enable-shared
--enable-threads=posix
--enable-target-optspace
--enable-lto
--enable-libssp
--enable-cheaders=c_global
--enable-version-specific-runtime-libs
--with-linker-hash-style=gnu
--with-ppl=no
--with-cloog=no
--disable-silent-rules
--disable-dependency-tracking
--disable-nls
--disable-libgomp
--disable-libmudflap
--disable-multilib
--disable-werror
It successfully completes the first pass and runs for awhile on the
second pass (with xgcc) where it fails with
/home/jgd/gcc/gcc-4.8.0/gcc-4.8.0-arm/host-i686-linux-gnu/gcc/xgcc
-B/home/jgd/gcc/gcc-4.8.0/gcc-4.8.0-arm/host-i686-linux-gnu/gcc/
-B/usr/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi/bin/
-B/usr/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi/lib/
-isystem
/usr/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi/include
-isystem
/usr/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi/sys-include
--sysroot=/tmp/arm -g -Os -O2 -g -Os -DIN_GCC
-DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition -isystem ./include -fPIC -fno-inline -g
-DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -Dinhibit_libc
-fPIC -fno-inline -I. -I. -I../.././gcc -I../.././libgcc
-I../.././libgcc/. -I../.././libgcc/../gcc -I../.././libgcc/../include
-DHAVE_CC_TLS -o _gcov.o -MT _gcov.o -MD -MP -MF _gcov.dep -DL_gcov -c
../.././libgcc/libgcov.c
In file included from ../.././libgcc/gthr.h:148:0,
from ../.././libgcc/libgcov.c:31:
./gthr-default.h:35:21: fatal error: pthread.h: No such file or directory
#include <pthread.h>
^
compilation terminated.
make[2]: *** [_gcov.o] Error 1
make[2]: Leaving directory
`/home/jgd/gcc/gcc-4.8.0/gcc-4.8.0-arm/arm-angstrom-linux-gnueabi/libgcc'
make[1]: *** [all-target-libgcc] Error 2
make[1]: Leaving directory `/home/jgd/gcc/gcc-4.8.0/gcc-4.8.0-arm'
make: *** [all] Error 2
There is a pthread.h in
./fixincludes/tests/base/pthread.h
./fixincludes/tests/base/sys/pthread.h
but neither of those are in the search path for xgcc. I tried setting
$PATHS but that variable isn't used in configure when it generates that
makefile.
I'm pretty much at my wits' end right now. I can't figure out why Kai
got his to work but using the same configure command I can't.
This is what my currently installed and working compiler says to the -v
command
Using built-in specs.
COLLECT_GCC=./arm-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/usr/arm-angstrom-linux-gnueabi/bin/../libexec/gcc/arm-linux-gnueabi/4.7.1/lto-wrapper
Target: arm-linux-gnueabi
Configured with:
/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/src/gcc-linaro-4.7-2012.04/configure
--build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu
--target=arm-linux-gnueabi
--prefix=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/install
--with-sysroot=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/install/arm-linux-gnueabi/libc
--enable-languages=c,c++,fortran --disable-multilib --with-arch=armv7-a
--with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with-float=softfp
--with-pkgversion='crosstool-NG linaro-1.13.1-2012.04-20120426 - Linaro
GCC 2012.04' --with-bugurl=https://bugs.launchpad.net/gcc-linaro
--enable-__cxa_atexit --enable-libmudflap --enable-libgomp
--enable-libssp
--with-gmp=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static
--with-mpfr=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static
--with-mpc=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static
--with-ppl=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static
--with-cloog=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static
--with-libelf=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static
--with-host-libstdcxx='-L/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/.build/arm-linux-gnueabi/build/static/lib
-lpwl' --enable-threads=posix --disable-libstdcxx-pch
--enable-linker-build-id --enable-gold
--with-local-prefix=/cbuild/slaves/oort14/crosstool-ng/builds/arm-linux-gnueabi-linux/install/arm-linux-gnueabi/libc
--enable-c99 --enable-long-long --with-mode=thumb --enable-gnu-unique-object
Thread model: posix
gcc version 4.7.1 20120402 (prerelease) (crosstool-NG
linaro-1.13.1-2012.04-20120426 - Linaro GCC 2012.04)
I've tried that too, modified to my install location but with no joy.
John
--
John DeArmond
Tellico Plains, Occupied TN
http://www.fluxeon.com <-- THE source for induction heaters
http://www.neon-john.com <-- email from here
http://www.johndearmond.com <-- Best damned Blog on the net
PGP key: wwwkeys.pgp.net: BCB68D77
More information about the Gcc-help
mailing list