Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Loading

Problem with Linux AVR compile

Posted by Nobody/Anonymous on September 16, 2006
I'm just trying to get the basic ATMega323 demo file to compile but I keep runing into this:

Compiling: serial/serial.c
avr-gcc -c -mmcu=atmega323 -I. -D GCC_MEGA_AVR -I. -I../../Source/include -I../Common/include -g -Os -fsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wextra -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused -Wa,-adhlns=serial/serial.lst -std=gnu99 serial/serial.c -o serial/serial.o
serial/serial.c:194: warning: return type defaults to `int'
serial/serial.c:194: warning: function declaration isn't a prototype
serial/serial.c: In function `SIGNAL':
serial/serial.c:194: warning: type of "__vector_13" defaults to "int"
serial/serial.c: At top level:
serial/serial.c:210: warning: return type defaults to `int'
serial/serial.c:210: warning: function declaration isn't a prototype
serial/serial.c:210: error: redefinition of 'SIGNAL'
serial/serial.c:194: error: previous definition of 'SIGNAL' was here
serial/serial.c: In function `SIGNAL':
serial/serial.c:210: warning: type of "__vector_14" defaults to "int"
serial/serial.c: At top level:
serial/serial.c:210: warning: unused parameter '__vector_14'
make: *** [serial/serial.o] Error 1

my gcc version is 3.4.3 and I'm runing Ubuntu 6.06LTS.

I'm trying to get this to compile before I start converting for a ATmega128. Besides switching the the clock speed and the Heap size and the UARTs used, this should run out of the box right?

Thanks for your help!

--Jessew

RE: Problem with Linux AVR compile

Posted by Nobody/Anonymous on September 17, 2006
The ports are only tested on Windows, so normally compilation problems on Linux are attributed to incorrect case of incorrect direction of / within either the makefile of #include's. In this case it appears it is because you are using a different version of AVR GCC.

Check you are actually using avr-gcc, and not accidentally picking up a different version of GCC from somewhere in your path.

When I type gcc --version I get:

avr-gcc (GCC) 3.4.6


RE: Problem with Linux AVR compile

Posted by Nobody/Anonymous on September 18, 2006
You can clearly see from the error that it is calling avr-gcc......but I'll check the backslashes.
Thanks!

-Jesse W

RE: Problem with Linux AVR compile

Posted by Nobody/Anonymous on September 18, 2006
I think not all AVR GCC versions use signals in the same way. Some features were deprecated and FreeRTOS updated accordingly. I should try updating to the latest AVR GCC version and see if that helps, or at least if the messages change.

RE: Problem with Linux AVR compile

Posted by Nobody/Anonymous on September 19, 2006
I found out that you need to do this:
#include <avr/signal.h>

avr-gcc -v says I am using 3.4.3....I'll see if I can't update but I think they have gone to using stuff like this: UART_INTERRUPT_HANDLER(SIG_UART_TRANS)
{stuff....}

at least that's what the Procyon AVRlib is like as of it's revision in 2003....has it changed since then?

-Jesse W
I should probably register huh?


[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]


Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

Version 10.1.0 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


Careers

FreeRTOS and other embedded software careers at AWS.



FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Renesas

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner