将 objcopy 与“薄存档”文件一起使用时出现问题
Posted
技术标签:
【中文标题】将 objcopy 与“薄存档”文件一起使用时出现问题【英文标题】:Problem while using objcopy with "thin archive" file 【发布时间】:2019-02-27 14:12:36 【问题描述】:请使用以下 shell 命令重现问题:
# create subdirectory
mkdir subdir
# create source files with dummy functions
echo 'void func1()' > file1.c
echo 'void func2()' > ./subdir/file2.c
# compiling sources into object files
gcc -c file1.c -o file1.o
gcc -c ./subdir/file2.c -o ./subdir/file2.o
# creating "thin archive" file from object files
ar crT out.a file1.o ./subdir/file2.o
# running objcopy, which leads to an error
objcopy out.a out_copy.a
结果出现以下错误:
objcopy:st0AENRL/subdir/file2.o: 没有这样的文件或目录
附:当“瘦”存档由子目录中的目标文件组成时,objcopy 会出现问题。
有人知道这样的 objcopy 的行为是否正常吗?
【问题讨论】:
可能是一个错误。我在 bugzilla 上做了一个报告:sourceware.org/bugzilla/show_bug.cgi?id=24281 【参考方案1】:这确实是一个错误。 据报道here。 对精简存档的支持是临时的disabled。
【讨论】:
以上是关于将 objcopy 与“薄存档”文件一起使用时出现问题的主要内容,如果未能解决你的问题,请参考以下文章
将 DCMTK 与 Visual Studio 一起使用时出现链接器错误 LNK2019
将插入与 KeyHolder 一起使用时出现 ArrayIndexOutOfBoundsException