Andes Workshop
http://forum.andestech.com/

如何將某個file的.bss獨立成放在某一段?
http://forum.andestech.com/viewtopic.php?f=23&t=592
Page 1 of 1

Author:  cindy [ Fri Jul 13, 2012 6:29 pm ]
Post subject:  如何將某個file的.bss獨立成放在某一段?

假設有2個*.c檔,
他們產生的.bss要放在不同的位置,不要放在一起。
可以如下列的寫法。

Code:
MEMORY
{
  ROM (rwx) : ORIGIN = 0x1000, LENGTH = 0x1000
  RAM (rwx) : ORIGIN = 0x4000, LENGTH = 0x1000
}

SECTIONS
{
   .text : {
      foo.o (.text)
      * (.text)
   } AT>ROM

  .sbss_w1           :
  {
    foo.o (.sbss_w .sbss_w.*)
  } AT>ROM

  .sbss_w2           :
  {
    *(.sbss_w .sbss_w.*)
  } AT>RAM


}


附件是完整的example。
注意!要分開寫的foo.o (.text)必須要放在* (.text)的前面。
否則會* (.text)就包含了全部的.text,就不會把foo.o (.text)單獨置放。

Attachments:
test_ld.zip [4.76 KiB]
Downloaded 882 times

Page 1 of 1 All times are UTC + 8 hours [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/