简介
c/c++开发中,将常用的代码封装为代码库是常见需求
使用代码库时,如果每次都源码编译
会导致编译时间长,重复编译,组织文件复杂等问题
那有没有解决方案呢?有!动态链接库解君愁
什么是动态链接库?
由操作系统运行时加载,可多程序共享的二进制代码库
操作
gcc clang 编译器操作一致
# 编译模块为动态库
gcc -fPIC -shared -o <库名> <源文件>
# <库名> 应当遵守规范
# "lib name .suffix"
# 例: libout.so(linux) libout.dll(win) libout.dylib(mac)
# 链接动态库
gcc <入口文件> -l <库名> -L <库路径> -Wl,-rpath=<库路径>
# <入口文件> 是包含 main() 函数的".c/.cpp"文件
# <库名> 不要带"lib"与".suffix"
# <库路径> 只用相对路径
来源
结尾
感谢读者的耐心阅读,如有疑问,欢迎私信作者b站