Good Day,

When I compile the following simple program, I get the linker error: multiple sections using address 0x300000.

This is the first time trying to use SDCC, I assume the warnings have nothing to do with the error and can be ignored for now.

Version: mcs51/gbz80/z80/z180/r2k/ds390/pic16/pic14/TININative/ds400/hc08 3.0.6 #6976 (Oct 18 2011) (Linux)
Running on: Ubuntu 8.04 - the Hardy Heron

My program:

#include <pic16/pic18f2455.h>
__code char __at __CONFIG1L conf1 = _CPUDIV__OSC1_OSC2_SRC___4__96MHZ_PLL_SRC___6__1L & _PLLDIV_DIVIDE_BY_6__24MHZ_INPUT__1L;
 
__code char __at __CONFIG1H conf2 = _OSC_HS__HS_PLL__USB_HS_1H & _FCMEN_OFF_1H & _IESO_OFF_1H;
 
void main()
{
 
   while(1)
    {
        PORTA=0;
    }
}

Compiled with:
sudo sdcc  -mpic16 -I /usr/local/share/sdcc/non-free/include/ -L /usr/local/share/sdcc/non-free/lib/pic16  --use-non-free test1.c

Result:
test1.asm:9:Warning [212] __CONFIG has been deprecated for PIC18 devices. Use directive CONFIG.
test1.asm:261:Warning [220] Address exceeds maximum range for this processor.
test1.asm:261:Warning [220] Address exceeds maximum range for this processor.
message: using default linker script "/usr/local/share/gputils/lkr/18f452.lkr"
error: multiple sections using address 0x300000

Regards, Tim.