|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||||
|
|||||
|
guidelines for modifying the linker script???
I got into the scripting thing -- I figure it's a good way to get my newbie programmers involved quickly. I modified the scripting system to allow mutliple script routines in the one script array (I have a NAME and an END "command" that indicates the extent of each script).
So I started writing lots of little scripts (all in the one array). I'm not even halfway into it when the linker complains: Code:
MPLINK 3.90, Linker Copyright (c) 2004 Microchip Technology Inc. Error - section '.idata_scripting.o' can not fit the section. Section '.idata_scripting.o' length=0x000001a5 Errors : 1 Can someone explain the syntax and semantics of the linker script? And what the physical limits are? See my linker script below. Thanks, Norm Code:
// $Id: 18f8520i.lkr,v 1.4 2003/03/13 05:02:23 sealep Exp $ // File: 18f8520i.lkr // Sample linker script for the PIC18F8520 processor LIBPATH . //FILES c018i.o FILES clib.lib FILES p18f8520.lib CODEPAGE NAME=vectors START=0x0 END=0x7ff PROTECTED CODEPAGE NAME=page START=0x800 END=0x7FFF CODEPAGE NAME=idlocs START=0x200000 END=0x200007 PROTECTED CODEPAGE NAME=config START=0x300000 END=0x30000D PROTECTED CODEPAGE NAME=devid START=0x3FFFFE END=0x3FFFFF PROTECTED CODEPAGE NAME=eedata START=0xF00000 END=0xF003FF PROTECTED ACCESSBANK NAME=accessram START=0x0 END=0x5F DATABANK NAME=gpr0 START=0x80 END=0xFF PROTECTED DATABANK NAME=gpr1 START=0x100 END=0x1FF DATABANK NAME=gpr2 START=0x200 END=0x2FF DATABANK NAME=gpr3 START=0x300 END=0x3FF DATABANK NAME=gpr4 START=0x400 END=0x4FF DATABANK NAME=gpr5 START=0x500 END=0x5FF DATABANK NAME=gpr6 START=0x600 END=0x6FF DATABANK NAME=gpr7 START=0x700 END=0x7F3 DATABANK NAME=dbgspr START=0x7F4 END=0x7FF PROTECTED ACCESSBANK NAME=accesssfr START=0xF60 END=0xFFF PROTECTED SECTION NAME=CONFIG ROM=config STACK SIZE=0x100 RAM=gpr6 |
|
#2
|
||||
|
||||
|
Re: guidelines for modifying the linker script???
Our team is having the same problem. Does anyone know how to fix this?
[edit] We managed to fix this problem by activating the optimization options in the compiler. We also removed the third argument from all the autonomous scripting functions and changed the structure definition to only two arguments. We also changed the first argument from a long int to an int, all of which freed up a lot of space. Hope this helps. Last edited by Travis_Rozek : 05-03-2005 at 15:33. |
|
#3
|
|||
|
|||
|
Re: guidelines for modifying the linker script???
We tried increasing the linker file, but quickly discovered why FIRST has it marked Read-Only. The only compiler/linker switches that can help you require a complete and total recompile of everything, but there are some modules for which FIRST only supplies a library, not source code.
We went back and did some *serious* code reduction and manual optimizations to get it all to fit. Lynn (D) - Team Voltage 386 Software PS. Watch for us at the Central Florida Regionals, we'll be the ones capping the center goal with a vision tetra in autonomous every now and then! See BitTorrent videos at http://ldeffenb.dnsalias.net:30049. Download the one called "20050222 Tetras". PPS. BitTorrent clients are available at www.BitTorrent.com or www.BitTornado.com. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| A (More) Readable Script | Astronouth7303 | Programming | 2 | 15-01-2005 20:26 |
| Looking for SECURE login script | plutonium83 | Website Design/Showcase | 9 | 22-01-2004 14:40 |