gpt4 book ai didi

linker - 链接器脚本中的Make或Shell变量

转载 作者:行者123 更新时间:2023-12-04 04:31:34 24 4
gpt4 key购买 nike

链接描述脚本是否可以访问makefile/shell变量并根据所述变量做出决定?

例如,假设我想在不使用其他链接程序脚本的情况下更改下面RAM区域的开始,是否可以使用make变量来执行此操作?

MEMORY
{
ifeq ($(SOME_VAR),0)
RAM (wx) : ORIGIN = 0x100000, LENGTH = 128K
else
RAM (wx) : ORIGIN = 0x200000, LENGTH = 128K
endif
}

最佳答案

ld不会从环境中导入任何变量,因此无法直接使用它们。最好的方法是使用要导出的环境变量创建自己的链接描述文件,并使原始链接描述文件包含如下内容:

生成文件:

foo:
echo SOMEVAR=$(SOMEVAR) > environment_linker_script
ld ...

enviroment_linker_script:
SOMEVAR=xxx

master_linker_script:
include environment_linker_script

ifeq ($(SOME_VAR),0) ...

关于linker - 链接器脚本中的Make或Shell变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10937934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com