我已经构建了一个带有一堆函数的静态库foo.a。某些函数定义未预设,并且正如预期的那样链接器在链接它并尝试创建精灵时提供未定义的引用。我想知道是否有一个选项可以在链接器命令行中为符号和地址提供单独的输入(对于缺少定义的函数)。
例如:假设我有一个符号定义文件def.txt,它具有以下函数/全局变量定义,
func_a 0x100 0x10
func_b 0x120 0x20
glob_b 0x200 0x4
glob_c 0x240 0x4
我想将foo.a与此文件链接起来,以便链接器不会抱怨这些定义。在我的系统中,这些函数存在于不同的区域(比如说ROM),这就是我没有在这个精灵中定义它们的原因,只是想指出它们存在的位置
gcc -static -nostdlib -nostartfiles -o foo.elf foo.a -lm -lgcc -T test.lod
在上面的命令行中还有一种方法可以输入这个def.txt文件