Linux下静态库和动态库的创建和使用( 转载 )

    在Linux下进行C/C++开发经常要创建和使用库,包括静态库和动态库(共享库)。静态库文件的扩展名是.a,其命名规则是libxxx.a,动态库的扩展名是.so,其命名规则是libxxx.so。静态库和动态库在链接调用的是都是-lxxx。下面讲一下静态库和动态库具体创建和使用
    (1)静态库
        假如我们要将源文件test.c编译成静态库,首先,源文件编译成目标文件
                gcc-c test.c
      编译成功之后会生成目标文件test.o,然后由目标文件创建成库
              ar  crslibtest.a    test.o
      创建好库之后,怎么使用呢,比如我们要在编译main.c是使用test库,
              gcc -o main main.c -L. -ltest
     
        -L.表示在当前目录下找库文件
     
    (2)动态库
      创建动态库第一步也是将源文件编译成目标文件,然后又目标文件创建成库
            gcc -shared -fPIC  -o libtest.so test.o
      使用时与静态库类似
            gcc -o main main.c -L. -ltest
     
        在使用动态库时,若不指定库文件目录,既不用-L.,则要设置环境变量LD_LIBRARY_PATH,将其设为当前目录即可。或者将动态库文件拷贝到/usr/lib或/lib中,然后运行ldconfig更新即可,还可以修改/etc/ld.so.conf,将当前目录追加的该文件中
      pwd>> /etc/ld.so.conf
然后运行ldconfig命令更新下即可


转载地址: http://blog.chinaunix.net/uid-25808509-id-2930240.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值