静态库和动态库同时链接
Posted tongyishu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态库和动态库同时链接相关的知识,希望对你有一定的参考价值。
在应用程序需要链接外部库的情况下,linux默认对库的链接是使用动态库,在找不到动态库的情况下再选择静态库。
当动态库与静态库混合链接时,使用-static会导致所有的库都使用静态链接的方式,这时就需要-Wl的方式:
gcc –o test test.c –Wl,-Bstatic -lcrypto –Wl,-Bdynamic –lsecurec
此外还要注意系统的运行库使用动态链接的方式,所以当动态库在静态库前面链接时,必须在命令行最后使用动态链接命令才能正常链接:
gcc –o test test.c –Wl,-Bdynamic -lsecurec –Wl,-Bstatic lcrypto –Wl,-Bdynamic
注意:尾部的-Wl,-Bdynamic表示 将缺省库链接模式恢复成动态链接。
以上是关于静态库和动态库同时链接的主要内容,如果未能解决你的问题,请参考以下文章