首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >核心实用程序中缺少__vdso_time?

核心实用程序中缺少__vdso_time?
EN

Stack Overflow用户
提问于 2012-12-02 10:35:39
回答 1查看 10.8K关注 0票数 12

我构建了最新的glibc,现在我在核心应用(如lscat )或其他类似vim的函数方面遇到了一些问题。

我的错误是

代码语言:javascript
复制
-bash-4.0$ cat
cat: error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument

我构建了,glibc,使用以下配置没有错误

代码语言:javascript
复制
../glibc/configure --prefix=/home/ex/uid377/glibbuilt

在较早的版本(如2.14 )上,运行实用程序会导致分段错误。

代码语言:javascript
复制
-bash-4.0$ ./pwd
./pwd: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./pwd)
-bash-4.0$ LD_LIBRARY_PATH=/home/ex/uid377/glibc/lib/:${LD_LIBRARY_PATH}
-bash-4.0$ ./pwd
Segmentation fault (core dumped)

编辑内核版本

代码语言:javascript
复制
-bash-4.0$ uname -r
2.6.32.26-175.fc12.x86_64
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-02 23:31:33

在一个系统上有多个版本的glibc是可能的,但是有点棘手,正如this的答案所解释的那样。特别是:

LD_LIBRARY_PATH=/home/ex/uid377/glibc/lib/:${LD_LIBRARY_PATH}

预期会崩溃,因为您的ld-linux-x86-64.so.2将与libc.so.6不匹配。

cat:加载共享库时出错:__vdso_time: dlopen():.

还不清楚您是如何构建这个cat的,但它很可能是同一个问题:您从/lib64中选择了一些库,从/home/ex/uid377/glibc/lib中选择了一些库。别干那事。您必须将使用/home/ex/uid377/glibc/lib/libc.so.6的所有程序与-Wl,--dynamic-linker=/home/ex/uid377/glibc/lib/ld-linux-x86-64.so.2链接起来。

您可以通过运行以下命令来跟踪当前正在加载哪些库:

代码语言:javascript
复制
env LD_DEBUG=files,libs ./cat
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13668457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档