如何在ubuntu 11.04中设置LD_LIBRARY_PATH

时间:2013-05-08 09:17:08

标签: c linux shared-libraries

我见过LD_LIBRARY_PATH的很多链接,但是无法为LD_LIBRARY_PATH找到一个确切的方法。 我使用ldd(用于动态库)我需要

linux-gate.so.1 =>  (0x00f84000)
libcrypto.so.0.9.8 => /lib/libcrypto.so.0.9.8 (0x0018c000)
libxml2.so.2 => /usr/local/lib/libxml2.so.2 (0x00318000)
libxmlsec1.so.1 => /usr/local/lib/libxmlsec1.so.1 (0x00caa000)
libprotobuf-c.so.0 => /usr/local/lib/libprotobuf-c.so.0 (0x00957000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0x00110000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x009cc000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x00136000)
libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0x00b89000)
libxslt.so.1 => /usr/local/lib/libxslt.so.1 (0x0013a000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0x00172000)
libltdl.so.7 => /usr/lib/libltdl.so.7 (0x0017b000)
/lib/ld-linux.so.2 (0x007d1000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0x00d6a000)

请告诉我必须用路径确定的确切方式和位置。

1 个答案:

答案 0 :(得分:4)

最简单的方法是在你的程序的同一命令行:

LD_LIBRARY_PATH="/my/special/path:$LD_LIBRARY_PATH" myprogram

您还可以export该变量使其通过当前终端中的命令保持不变:

export LD_LIBRARY_PATH="/my/special/path:$LD_LIBRARY_PATH"

myprogram1
myprogram2

在这种情况下,两个程序都将看到新的库路径。