没有admin prevlieges,我如何找到ld搜索的目录?

时间:2013-01-04 13:03:37

标签: linux gcc static-libraries gnu ld

如何在没有管理员权限的情况下找到GNU linker搜索到的目录?


我可以通过以下方式获取列表:

$ sudo ldconfig -v 2>/dev/null | grep -v ^$'\t'
/lib/i386-linux-gnu:
/usr/lib/i386-linux-gnu:
/usr/local/lib:
/lib/x86_64-linux-gnu:
/usr/lib/x86_64-linux-gnu:
/usr/lib/fglrx:
/usr/lib32/fglrx:
/lib32:
/usr/lib32:
/lib:
/usr/lib:
/usr/lib/i386-linux-gnu/sse2: (hwcap: 0x0000000004000000)

此解决方案来自:How to print the ld(linker) search path


但是,在我没有管理员权限的计算机上,这将无效。我认为那是因为ldconfig位于/ sbin /中。我下载glibc并在本地安装它以创建另一个版本的ldconfig。我想这很愚蠢,因为本地版本给了我:

/usr/local/lib:
/usr/local/lib64:

是否仍然可以将所有目录作为非管理员? 似乎没有任何有用的ld标志或环境变量来完成这项工作。

1 个答案:

答案 0 :(得分:4)

仅仅因为ldconfig位于sbin并不意味着它不能作为普通用户运行。只需使用该命令并指定ldconfig的完整路径:

/sbin/ldconfig -v 2>/dev/null | grep -v ^$'\t'