avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] gcc 3.0.4 and ucos-ii problems


From: Dafni & Robert Berger
Subject: RE: [avr-gcc-list] gcc 3.0.4 and ucos-ii problems
Date: Sat, 27 Apr 2002 18:42:41 +0300

Hi Ted, Ulf

I have successfully compiled ucos-ii with avr-gcc 3.0.4 under Linux after
Ted helped me to get avr-gcc running on my system.

I compied the linker script avrmega103.x to the source directory where the
patched linker scrip it supposed to reside.

The only change I made was the following:

data   (rw!x) : ORIGIN = (0x800000 + 0x60), LENGTH = 64K /* 4000 */

to use 64K external RAM.

And it compiles without any problems.

Regards,

Robert

---------------------------------------------------------------------------
Dafni & Robert Berger
Pharmacist & Embedded Systems Software Engineer
Stratigou Rogakou 24
15125 Polydrosso - Maroussi
Athens
Greece
Tel, Fax.: ++30 1 6847881
email: address@hidden
---------------------------------------------------------------------------

-----Original Message-----
From: address@hidden [mailto:address@hidden
Behalf Of Theodore A. Roth
Sent: Friday, April 26, 2002 8:43 PM
To: Ulf Dagman
Cc: address@hidden
Subject: Re: [avr-gcc-list] gcc 3.0.4 and ucos-ii problems

If you are using the linker script that comes with the zip file from the
micrium web site, you will have to tweak it to work with gcc-3.0.4. I've
only given it a quick look-see, but I think if you compare with the linker
scripts in binutils-2.11.2, the tweaks should be fairly obvious (at least
they looked obvious to me ;-).

Alternatively, you might just try tweaking the Makefile so that it doesn't
have that this:

  /usr/avr/bin/gcc ../obj/1-wire.o ../obj/os_cpu_c.o ../obj/ucos_ii.o
  ../obj/os_cpu_a.o  -T../source/avr85xx.x  -Wl,-Map=1-wire.map,--cref
  -mmcu=at90s8515 -o 1-wire.elf

doens't have the "-T../source/avr85xx.x" part and thus use the default
linker script.

I just guessing here since all I have is the avr-gcc port and not the
entire source for ucos-ii.

Hope that helps some.


Ted Roth


On Fri, 26 Apr 2002, Ulf Dagman wrote:

>Hi
>
>I'm trying to compile an application using the ucos-ii realtime kernel
>and avr-gcc 3.0.4,
>using my linux box.
>I've done this using gcc 2.95.2 and using Jesper Hansens additions to
>ucos-ii
>with no problems ( well  thats on a windows machine ).
>
>I have no idea what missing or whats wrong, any ideas ?
>What is missing or wrong for the loader ?
>
>Well, the log :
>
>-------------------
>$ make
>/usr/avr/bin/gcc -c -g -O3 -Wall -Wstrict-prototypes
>-Wa,-ahlms=../lst/1-wire.lst -mmcu=at90s8515 -I. -o ../obj/1-wire.o
>1-wire.c
>/usr/avr/bin/gcc -c -g -O3 -Wall -Wstrict-prototypes
>-Wa,-ahlms=../lst/os_cpu_c.lst -mmcu=at90s8515 -I. -o ../obj/os_cpu_c.o
>../source/os_cpu_c.c
>/usr/avr/bin/gcc -c -g -O3 -Wall -Wstrict-prototypes
>-Wa,-ahlms=../lst/ucos_ii.lst -mmcu=at90s8515 -I. -o ../obj/ucos_ii.o
>../../../source/ucos_ii.c
>/proj/atmel/software/ucos-ii/source/os_task.c:44: warning: `OSDummy'
>defined but not used
>/usr/avr/bin/gcc -x assembler-with-cpp  -c -Wa,-gstabs -mmcu=at90s8515
>-I. -o ../obj/os_cpu_a.o ../source/os_cpu_a.asm
>/usr/avr/bin/gcc ../obj/1-wire.o ../obj/os_cpu_c.o ../obj/ucos_ii.o
>../obj/os_cpu_a.o  -T../source/avr85xx.x  -Wl,-Map=1-wire.map,--cref
>-mmcu=at90s8515 -o 1-wire.elf
>/usr/lib/gcc-lib/avr/3.0.4/../../../../avr/bin/ld: section .init0
>[000017a6 -> 000017bf] overlaps section .data [000017a6 -> 00001977]
>/usr/lib/gcc-lib/avr/3.0.4/../../../../avr/bin/ld: section .init1
>[000017c0 -> 000017d5] overlaps section .data [000017a6 -> 00001977]
>/usr/lib/gcc-lib/avr/3.0.4/../../../../avr/bin/ld: section .init3
>[000017d6 -> 000017fd] overlaps section .data [000017a6 -> 00001977]
>/usr/lib/gcc-lib/avr/3.0.4/../../../../avr/bin/ld: section .init7
>[000017fe -> 00001803] overlaps section .data [000017a6 -> 00001977]
>/usr/lib/gcc-lib/avr/3.0.4/../../../../avr/lib/crts8515.o: In function
>`__c_startup__':
>../../libc/gcrt1.S:177: undefined reference to `__stack'
>../../libc/gcrt1.S:180: undefined reference to `__stack'
>../../libc/gcrt1.S:160: undefined reference to `__data_load_start'
>../../libc/gcrt1.S:161: undefined reference to `__data_load_start'
>../../libc/gcrt1.S:163: undefined reference to `__data_start'
>../../libc/gcrt1.S:164: undefined reference to `__data_start'
>../../libc/gcrt1.S:165: undefined reference to `__data_end'
>../../libc/gcrt1.S:180: undefined reference to `__data_end'
>../obj/1-wire.o: In function `main':
>/proj/atmel/software/ucos-ii/at-avr/gcc/1-wire/1-wire.c:84: undefined
>reference to `__stack'
>/proj/atmel/software/ucos-ii/at-avr/gcc/1-wire/1-wire.c:84: undefined
>reference to `__stack'
>make: *** [1-wire.elf] Error 1
>$
>----------------------
>
>/Regards
>
>Ulf D
>
>avr-gcc-list at http://avr1.org
>


avr-gcc-list at http://avr1.org

avr-gcc-list at http://avr1.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]