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]
Other format: [Raw text]

Re: compiling gcc 4.1.1 for AVR


Kai Ruottu wrote:

alee wrote:

I'm trying to compile gcc 4.1.1 for the AVR platorm.


You seem to have achieved your goal already!

I compiled binutils 2.17 for the AVR platorm already and when I try to compile gcc,


Can you in any way imagine that the subdirectory 'gcc' in the GCC sources could be that
'GCC' ? So when it is "compiled", the compiler(s) called as "GCC" is/are ready!


I get the following error:

....
checking for avr-gcc... /linux_source/gcc-4.1.1/host-i686-pc-linux-gnu/gcc/xgcc -B/linux_source/gcc-4.1.1/host-i686-pc-linux-gnu/gcc/ -B/opt/avr/avr/bin/ -B/opt/avr/avr/lib/ -isystem /opt/avr/avr/include -isystem /opt/avr/avr/sys-include
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
make[1]: *** [configure-target-libssp] Error 1


This error tells that the already built "GCC" for AVR cannot create executables with
the help of the AVR targeted 'as' and 'ld', the AVR targeted C library etc.


Why the GCC build tries to build the 'libssp.a' for AVR as default and whether it is required for
AVR at all, are the questions you should ask here. Anyway there should be the GCC configure
option :


|--disable-libssp|
   Specify that the run-time libraries for stack smashing protection
   should not be built.

to disable it's build, so if you think it being not needed, just disable it's build! A reconfigure
and a rebuild could show how you could get a clean working build but just as well you could
try to remove the 'libssp' subdir from the '/linux_source/gcc-4.1.1/host-i686-pc-linux-gnu/avr'
and then try 'make' again... If this doesn't help, then try removing the 'libssp' "target" from
the generated main GCC 'Makefile'.


Where do I get gmp.h? Do I need it? What else can be wrong?


My thought is that you don't need 'libssp' for AVR at all...




Ok...I added the "--disable-libssp" and "make" went further but it stops at another error:
.....
Entering directory `/linux_source/gcc-4.1.1/host-i686-pc-linux-gnu/gcc'
gcc -c -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I../.././gcc -I../.././gcc/build -I../.././gcc/../include -I../.././gcc/../libcpp/include -o build/fix-header.o ../.././gcc/fix-header.c
/opt/avr/bin/avr-as: unrecognized option `-Qy'
make[2]: *** [build/fix-header.o] Error 1
make[2]: Leaving directory `/linux_source/gcc-4.1.1/host-i686-pc-linux-gnu/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/linux_source/gcc-4.1.1'
make: *** [all] Error 2


What is "make" building here? Do I have a buggy avr-as? avr-as doesn't have the '-Qy' option...should it? Or is "make" using avr-as incorrectly here?

Thanks.


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