Quality RTOS & Embedded Software

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


multiple definition errors while building PIC24 based project

Posted by themadmstrmnd on February 11, 2016

I am getting multiple definition errors while building a project for a PIC24 platform. The functions the compiler is erroring on is found in list.c. I can't think why this is happening. list.h is of course protected from the ifndef LIST_H. The FreeRTOS files have not been modified.

I am using version 8.2.3

rtos/list.c:80: multiple definition of _vListInitialise' build/default/production/rtos/list.o(.text+0x0):rtos/list.c:80: first defined here build/default/production/rtos/list.o(.text+0x36): In functionvListInitialiseItem': rtos/list.c:105: multiple definition of _vListInitialiseItem' build/default/production/rtos/list.o(.text+0x36):rtos/list.c:105: first defined here build/default/production/rtos/list.o(.text+0x44): In functionvListInsertEnd': rtos/list.c:117: multiple definition of _vListInsertEnd' build/default/production/rtos/list.o(.text+0x44):rtos/list.c:117: first defined here build/default/production/rtos/list.o(.text+0x80): In functionvListInsert': rtos/list.c:146: multiple definition of _vListInsert' build/default/production/rtos/list.o(.text+0x80):rtos/list.c:146: first defined here build/default/production/rtos/list.o(.text+0xf2): In functionuxListRemove': rtos/list.c:213: multiple definition of `_uxListRemove' build/default/production/rtos/list.o(.text+0xf2):rtos/list.c:213: first defined here c:program files (x86)microchipxc16v1.23binbin..bin/elf-ld.exe: Link terminated due to previous error(s). make[2]: *** [dist/default/production/coreModule.X.production.hex] Error 255 make[1]: *** [.build-conf] Error 2 make: *** [.build-impl] Error 2

multiple definition errors while building PIC24 based project

Posted by heinbali01 on February 11, 2016

Hi Nick,

Are you sure you didn't include the list.o module two times?

Can you check the complete command that is issued for linking?

I think it's got nothing to do with the header file list.h: those are only function prototypes like this one:

~~~~ void vListInitialise( Listt * const pxList ) PRIVILEGEDFUNCTION; ~~~~

Did you define PRIVILEGED_FUNCTION somehow?


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

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

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Version 10.1.1 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.


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


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