我想要一个静态库,并能够做出一个正确遵循的yolinux教程 http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.htmlç静态库的Linux
时,我想包括静态库,使一个新的静态库的问题就出现了。 方案是:
gcc -Wall -c cdbSearch.c
ar -cvq cdbSrc.a cdbSearch.o cdb.a
这个成功创建了一个名为cdbSrc.a
静态库,但是当我试图用我的测试程序
gcc -o cdbtest cdbtest.c cdbSrc.a
cdbSrc.a(cdbSearch.o): In function `cdb_search':
cdbSearch.c:(.text+0xa2): undefined reference to `cdb_seek'
collect2: ld returned 1 exit status
连结这个它给了我一个错误说, cdb_seek不能被参考,这实际上是cdb.a的一部分
如果我用cdb.a编译测试程序,它工作正常,但它没有t服务的目的..
gcc -o cdbtest cdbtest.c cdbSrc.a cdb.a
和二进制文件已成功创建cdbtest。
这是预期的行为,是的,为什么?如果不是,我做错了什么。
的可能重复[集合静态库(http://stackoverflow.com/questions/9547061/aggregate-static-libraries) – Mat 2012-08-03 05:08:31