在旧的SUSE

时间:2017-04-21 04:35:09

标签: linux gcc glibc elf abi

我一直在为我的SLES 10机器使用旧版本的gcc和libc来构建我的代码。最近为了增加对新库的支持,我添加了GCC 6.3构建版本。但是当我提到这个时

  

./ gcc -o~ / test~ / test.c -L / home / newuser / newos / Gcc / glibc-2.17 / lib -lXX

,我收到以下错误:

  

./ gcc:/lib64/libc.so.6:找不到版本`GLIBC_2.14'(./gcc要求)

     

./ gcc:/lib64/libc.so.6:找不到版本`GLIBC_2.11'(./gcc要求)

/ lib64中的当前glibc版本是2.4,我无法升级它,因为我的大多数文件都需要它。我想在编译时将glibc 2.14链接到gcc 6.3.0。有什么办法可以从gcc命令行中引用新的glibc吗?

我尝试使用this link中提供的修补程序,因为此方案与我的方案非常相似:

  

./ gcc -Wl, - rpath = .. / .. / glibc-2.14 / lib   -Wl, - 动态接头= .. / .. / glibc的-2.14 / LIB / libc.so.6的

  

./ gcc -Wl, - rpath = .. / .. / glibc-2.14 / lib   -Wl, - 动态接头= .. / .. / glibc的-2.14 / LIB / LD-linux.so.2

但我仍然存在同样的错误。还有什么需要做的吗?

EDIT1

我添加了额外的命令来导出LD_LIBRARY_PATH。

  

export LD_LIBRARY_PATH = / path / to / glibc2.14 / lib

在导出之后,当我使用上面的命令运行gcc时,我遇到了另一个错误:

  加载共享库时出现

错误。   /path/to/glibc-2.14/lib/libm.so.6:ELF文件OS ABI无效

0 个答案:

没有答案