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