23、深入理解静态库与共享库:原理、应用与对比

深入理解静态库与共享库:原理、应用与对比

1. 解决共享库搜索难题

在使用新创建的共享库时,可能会遇到搜索困难的问题。可以通过修改 LD_LIBRARY_PATH 变量来包含当前目录,使用 $PWD 这个 shell 变量实现。

1.1 修改 LD_LIBRARY_PATH

$ LD_LIBRARY_PATH=$PWD
$ export LD_LIBRARY_PATH
$ ldd ./getuid
./getuid:
        libshared.so => /home/me/myproject/libshared.so (0x28063000)
        libstdc++.so.2 => /usr/lib/libstdc++.so.2 (0x28065000)
        libc.so.3 => /usr/lib/libc.so.3 (0x2809c000)
        libm.so.2 => /usr/lib/libm.so.2 (0x2811d000)

修改 LD_LIBRARY_PATH 后,动态加载器就能定位到共享库文件 libshared.so 。如果 LD_LIBRARY_PATH 变量中已经包含了其他目录,更好的做法是:

$ LD_LIBRARY_PATH=$LD
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值