<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Error when using custom linker scripts in LPCXpresso IDE</title>
    <link>https://community.nxp.com/t5/LPCXpresso-IDE/Error-when-using-custom-linker-scripts/m-p/574440#M21853</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anders@trebax on Wed Aug 18 09:21:01 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;[FONT=Arial][SIZE=2]Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have been looking at the AN10905 application note "USB mass storage class with the LPC1300 on-chip driver" and have followed the steps in chapter 3 on page 4 exactly; Built the project once, copied and edited the linker files, unchecked "Manage linker scripts" in the build options and directed the linker to use the new linker files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When I now try to build the project I get the error message:[/SIZE][/FONT][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][FONT=Courier New][SIZE=2]makefile:30: *** unterminated variable reference.&amp;nbsp; Stop.[/SIZE][/FONT][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][FONT=Arial][SIZE=2]The linker files looks as follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[B]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;myLinkerScript.ld:[/B][/SIZE][/FONT][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][FONT=Courier New][SIZE=2]INCLUDE "myLinkerScript_lib.ld"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;INCLUDE "[/SIZE][/FONT][FONT=Courier New][SIZE=2]myLinkerScript[/SIZE][/FONT][FONT=Courier New][SIZE=2]_mem.ld"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ENTRY(ResetISR)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SECTIONS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .text :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KEEP(*(.isr_vector))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.text*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.rodata*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; MFlash32&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ARM.extab : /* for exception handling/unwind - some Newlib functions (in common with C++ and STDC++) use this. */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.ARM.extab* .gnu.linkonce.armextab.*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; MFlash32&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __exidx_start = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ARM.exidx :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.ARM.exidx* .gnu.linkonce.armexidx.*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; MFlash32&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __exidx_end = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _etext = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .data :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _data = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(vtable)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.data*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _edata = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RamLoc8 AT&amp;gt;MFlash32&amp;nbsp;&amp;nbsp; [B]/* Line 30 */[/B]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .bss : /* zero initialized data */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _bss = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.bss*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(COMMON)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _ebss = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RamLoc8&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .cr_heap : /* Where we put the heap with cr_clib */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _pvHeapStart = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RamLoc8&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _vRamTop = __top_RamLoc8 ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _vStackTop = _vRamTop - 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][/FONT][FONT=Arial][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][/FONT][FONT=Arial][SIZE=2][B]myLinkerScript_mem.ld:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/B][FONT=Courier New]MEMORY&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; /* Define each memory region */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; MFlash32 (rx) : ORIGIN = 0x0, LENGTH = 0x8000 /* 32k */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; RamLoc8 (rwx) : ORIGIN = 0x10000180, LENGTH = 0x1E80 /* ~8k */&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; /* Define a symbol for the top of each memory region */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __top_MFlash32 = 0x0 + 0x8000;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __top_RamLoc8 = 0x10000000 + 0x2000;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/SIZE][/FONT][B][FONT=Arial][SIZE=2]myLinkerScript[/SIZE][/FONT][FONT=Arial][SIZE=2]_lib.ld:[/SIZE][/FONT][/B][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[FONT=Courier New]GROUP(libcr_c.a libcr_nohost.a libcr_eabihelpers.a)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[FONT=Arial]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/FONT][/SIZE][SIZE=2][FONT=Courier New][FONT=Arial]Any idea why this happens?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/FONT][/SIZE][SIZE=2][FONT=Courier New][FONT=Arial]When building the project with managed linker scripts (which are almost identical to the ones above) it all works well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only changes made to the linker files are the RAM region in [/FONT][/FONT][/SIZE][FONT=Arial][SIZE=2]myLinkerScript_mem.ld [/SIZE][/FONT][SIZE=2][FONT=Courier New][FONT=Arial]and the search paths for the two additional linker scripts in myLinkerScript.ld. I haven't edited anywhere near line 30 in myLinkerScript.ld!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/FONT][FONT=Arial]My guess is that it has something to do with [B]AT[/B] and I don't understand where this variable gets set.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;/Anders&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT] [/SIZE]&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 23:52:58 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T23:52:58Z</dc:date>
    <item>
      <title>Error when using custom linker scripts</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Error-when-using-custom-linker-scripts/m-p/574440#M21853</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anders@trebax on Wed Aug 18 09:21:01 MST 2010&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;[FONT=Arial][SIZE=2]Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have been looking at the AN10905 application note "USB mass storage class with the LPC1300 on-chip driver" and have followed the steps in chapter 3 on page 4 exactly; Built the project once, copied and edited the linker files, unchecked "Manage linker scripts" in the build options and directed the linker to use the new linker files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When I now try to build the project I get the error message:[/SIZE][/FONT][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][FONT=Courier New][SIZE=2]makefile:30: *** unterminated variable reference.&amp;nbsp; Stop.[/SIZE][/FONT][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][FONT=Arial][SIZE=2]The linker files looks as follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[B]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;myLinkerScript.ld:[/B][/SIZE][/FONT][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][FONT=Courier New][SIZE=2]INCLUDE "myLinkerScript_lib.ld"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;INCLUDE "[/SIZE][/FONT][FONT=Courier New][SIZE=2]myLinkerScript[/SIZE][/FONT][FONT=Courier New][SIZE=2]_mem.ld"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ENTRY(ResetISR)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SECTIONS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .text :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KEEP(*(.isr_vector))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.text*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.rodata*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; MFlash32&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ARM.extab : /* for exception handling/unwind - some Newlib functions (in common with C++ and STDC++) use this. */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.ARM.extab* .gnu.linkonce.armextab.*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; MFlash32&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __exidx_start = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ARM.exidx :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.ARM.exidx* .gnu.linkonce.armexidx.*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; MFlash32&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __exidx_end = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _etext = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .data :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _data = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(vtable)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.data*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _edata = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RamLoc8 AT&amp;gt;MFlash32&amp;nbsp;&amp;nbsp; [B]/* Line 30 */[/B]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .bss : /* zero initialized data */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _bss = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.bss*)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(COMMON)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _ebss = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RamLoc8&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .cr_heap : /* Where we put the heap with cr_clib */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _pvHeapStart = .;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RamLoc8&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _vRamTop = __top_RamLoc8 ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _vStackTop = _vRamTop - 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][/FONT][FONT=Arial][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/SIZE][/FONT][FONT=Arial][SIZE=2][B]myLinkerScript_mem.ld:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/B][FONT=Courier New]MEMORY&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; /* Define each memory region */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; MFlash32 (rx) : ORIGIN = 0x0, LENGTH = 0x8000 /* 32k */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; RamLoc8 (rwx) : ORIGIN = 0x10000180, LENGTH = 0x1E80 /* ~8k */&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; /* Define a symbol for the top of each memory region */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __top_MFlash32 = 0x0 + 0x8000;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __top_RamLoc8 = 0x10000000 + 0x2000;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/SIZE][/FONT][B][FONT=Arial][SIZE=2]myLinkerScript[/SIZE][/FONT][FONT=Arial][SIZE=2]_lib.ld:[/SIZE][/FONT][/B][SIZE=2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[FONT=Courier New]GROUP(libcr_c.a libcr_nohost.a libcr_eabihelpers.a)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[FONT=Arial]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/FONT][/SIZE][SIZE=2][FONT=Courier New][FONT=Arial]Any idea why this happens?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/FONT][/SIZE][SIZE=2][FONT=Courier New][FONT=Arial]When building the project with managed linker scripts (which are almost identical to the ones above) it all works well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only changes made to the linker files are the RAM region in [/FONT][/FONT][/SIZE][FONT=Arial][SIZE=2]myLinkerScript_mem.ld [/SIZE][/FONT][SIZE=2][FONT=Courier New][FONT=Arial]and the search paths for the two additional linker scripts in myLinkerScript.ld. I haven't edited anywhere near line 30 in myLinkerScript.ld!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT][/FONT][FONT=Arial]My guess is that it has something to do with [B]AT[/B] and I don't understand where this variable gets set.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;/Anders&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[/FONT] [/SIZE]&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:52:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Error-when-using-custom-linker-scripts/m-p/574440#M21853</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:52:58Z</dc:date>
    </item>
  </channel>
</rss>

