其他分享
首页 > 其他分享> > ranlib和静态库

ranlib和静态库

作者:互联网

我试图链接我创建的静态库,但出现此错误.

libmine.a: could not read symbols: Archive has no index; run ranlib to add one

我尝试执行ranlib libmine.a,但未做任何更改,它仍然给出相同的错误.我怎么解决这个问题?

解决方法:

要查看存档中的符号,请使用nm.

nm -s libmine.a

<输出>

子例程的入口点应标记为“ T”,如

00000000 T _sub1
00000019 T _sub2

您在“ ar”中使用了哪些开关来制作静态库?我通常在中使用“ ar -r”

ar -r libmine.a mine.o yours.o

如果仍然有问题,请添加“ -s”选项

ar -s -r libmine.a mine.o yours.o

另外,请确保该路径中没有其他“ libmine.a”文件,或者为您的“ libmine.a”建立一个明确的路径.链接器可能选择了另一个“ libmine.a”.

标签:x86-64,gcc,makefile,c-3,linux
来源: https://codeday.me/bug/20191201/2078306.html