如何在链接器脚本中使用存档中的目标文件
How do I use, in a linker script, an object file in an archive?
我使用arm-none-eabi-ld
进行链接,尽管我不认为ARM方面的问题改变了任何东西。我可能错了。
我有一个test-crt0.o
对象文件在一个名为libtest.a
在我的链接脚本我有:
STARTUP(test-crt0.o)
但是我得到这个错误:
$ arm-none-eabi-ld build/main。o -T脚本。ld -ltest
arm-none-eabi-ld: cannot find test-crt0.o
是否有任何方法可以将其具体指向我链接到的库中的目标文件?
编辑:我已经在另一个工作良好的链接器脚本中使用了这个:
.text : {
*test-crt0.o (.text)
*(.text)
}
星号在这种情况下是需要的,但显然不能与STARTUP一起工作。
您仍然需要在命令行上将test-crt0.o
filename传递给ld
。
链接器脚本中的条目只是告诉它去哪里。
相关文章:
- 如何找到目标文件 *.o 的 ram rom 使用情况(.bss .text .rodata .data)?
- 如何使用cmake从主要的CMakeList.txt复制目标文件?
- 可变参数模板在目标文件中有重复的符号?
- 在 Linux 上,目标文件比在 macOS 或 Windows 上大 2.5 倍
- 为什么即使链接器找到目标文件,我的程序也看不到函数定义?
- 从.o目标文件中提取函数的原始机器代码?
- Cmake:如何引用链接到多个程序的目标文件中的文件?
- 为什么内部链接的名称会出现在我的目标文件的符号表中?
- C++多个目标文件中的模板和编译
- 如果目标文件已经具有标头保护,我们是否应该用 #ifndef 来保护 #include
- Xcode 找不到目标文件
- 源外生成与目标文件的规则不匹配
- 链接 C 和C++目标文件
- nm 获取整个存档的未定义符号,而不是单独的目标文件
- 何时在带有头文件和目标文件的类方法中使用“inline”关键字
- 如何使用同一头文件编译和链接C++中的目标文件
- 源代码构建中的 SCons 仅适用于可执行程序,不适用于目标文件
- 代码::块不制作目标文件
- 粘附 C 和C++目标文件而不带源代码
- 如何在cmake中使用不同的命令和.exe不同的命令制作目标文件