我有一个基于 C++ 的项目(许多源文件),使用 gnu make 通过 makefile 编译。我有一个链接库的应用程序,比如 mylib。现在 mylib 归其他开发者所有。我看到生成库二进制文件的路径中有 2 个文件,即 libmylib.so(共享对象)和 libmylib.a(静态库归档文件)
我的应用程序生成文件具有以下链接器选项来链接库 mylib
LDFLAGS+=-l:mylib ...
问题是什么版本的库 mylib 将链接到我的应用程序可执行文件中
共享对象 libmylib.so 还是静态版本 libmylib.a ?
将如何决定,是否有任何其他 makefile 选项来管理它?