不编写lds文件,在c代码里获取段地址的方法

2019-03-26 12:40发布

uboot里在lds文件里定义段
  . = .;
  __u_boot_cmd_start = .;
  .u_boot_cmd : { *(.u_boot_cmd) }
  __u_boot_cmd_end = .;
C代码里用指针指向  __u_boot_cmd_start和  __u_boot_cmd_end就可以知道这个段的范围。
现在我在写linux应用程序(一般都是用系统默认的lds文件,直接一句gcc  a.c b.c),用__attribute__ ((unused,section (".u_boot_cmd")))定义u_boot_cmd段的内容,无法知道段的起始
能不能在c文件里写预编译提示符__attribute__ (xxxxxx)定义一个  __u_boot_cmd_start

还有个方法就是定义一个数组,数组填充命令的数据结构,但是这种方式明显没有uboot的灵活,唯一的好处是可抑制性高
不然我只能 此帖出自Linux与安卓论坛
0条回答

一周热门 更多>