linux – 当存在同名的共享库时,如何强制与静态库链接 - 代码日志

linux – 当存在同名的共享库时,如何强制与静态库链接

假设我有一个文件main.cpp,它使用在libmath中定义的sin()函数。还假设我们在同一目录中有libmath.a和libmath.so。现在如果我发出命令g -o main main.cpp -lmath,Linux的默认行为是链接到共享库libmath.so。我想知道有没有办法强制程序链接静态库libmath.a而不删除或移动共享库?
您需要将-static传递给链接器,但仅适用于所需的特定库。例如。:

g++ -o main main.cpp -Wl,-Bstatic -lmath -Wl,-Bdynamic
http://stackoverflow.com/questions/4500158/how-can-i-force-linking-with-a-static-library-when-a-shared-library-of-same-name

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:linux – 当存在同名的共享库时,如何强制与静态库链接