c++静态库和动态库的使用

文件目录结构为:
----main.c
|
|--lib
|
|--libcalc.a
|--libcalc2.so
|
|--include
|
|--head.h

  1. 静态库的使用
    gcc main.c -o a -I ./include/ -L ./lib/ -l calc
    其中-I参数指定了搜索头文件的目录,-L参数指定了静态库文件所在的目录,-l参数指定了库文件的名称(注意是不包含前缀和后缀的名称)

  2. 动态库的使用
    假设此时动态库文件的绝对路径为/home/xxx/main/lib/libcalc2.so
    那么首先将这个绝对路径添加到环境变量LD_LIBRARY_PATH中
    或者编辑文件vim /etc/ld.so.conf
    将绝对路径加入到这个文件中,直接复制到这个文件的最后就可以了
    然后执行sudo ldconfig,更新动态库配置文件就可以了,
    然后按照下面的编译
    gcc main.c -o a -I ./include/ -L ./lib/ -l calc2
    其中-I参数指定了搜索头文件的目录,-L参数指定了动态库文件所在的目录,-l参数指定了库文件的名称(注意是不包含前缀和后缀的名称)

posted @ 2021-03-13 21:39  胖胖咩  阅读(124)  评论(0)    收藏  举报