Ubuntu 10.04 LTS上编译GCC 4.7.2、LLVM 3.8

本文档详细记录了在Ubuntu 10.04 LTS系统上,由于官方停止维护导致的GLIBC版本不兼容问题,以及如何解决这一问题的过程。首先尝试通过编译GLIBC 2.14来解决,但由于编译失败,决定转向编译GCC 4.7.2和LLVM 3.8。首先,安装了GCC所需依赖GMP、MPFR、MPC,并分别编译安装。然后编译GCC 4.7.2,解决了编译过程中遇到的依赖问题。最后,下载并编译LLVM 3.8,确保使用自编译的GCC进行配置。编译完成后,所有软件成功安装在指定目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     一个项目需要在Ubuntu10.04上使用LLVM 3.8,从llvm.org上下载了一个binary包下来,运行提示要求GLIBC_2.14。由于Ubuntu 10.04已经停止维护了,GLIBC最高只支持到2.12。

 

编译GLIBC 2.14

       一开始想编译一个GLIBC2.14来用。

wgethttp://mirror.bjtu.edu.cn/gnu/libc/glibc-2.14.tar.xz

 

tar Jxvfglibc-2.14.tar.xz

cd glibc-2.14

mkdir build

cd build

../configure--prefix=/opt/glibc-2.14

make -j8

 

../misc/syslog.c: In function‘__vsyslog_chk’:

../misc/syslog.c:123: sorry, unimplemented:inlining failed in call to ‘syslog’: function body not available

../misc/syslog.c:155: sorry, unimplemented:called from here

make[2]: ***[/mnt/adm/sources/glibc-build/misc/syslog.o] Error 1

make[2]: Leaving directory`/mnt/adm/sources/glibc-src/misc'

make[1]: *** [misc/subdir_lib] Error 2

make[1]: Leaving directory`/mnt/adm/sources/glibc-src'

make: *** [all] Error 2

 

CFLAGS="-O2 -U_FORTIFY_SOURCE-fno-stack-protector" ../configure --prefix=/opt/glibc-2.14

make -j8

 

mawk: scripts/gen-sorted.awk: line 19:regular expression compile failed (bad class -- [], [^] or [)

/[^

mawk: scripts/gen-sorted.awk: line 19:syntax error at or near ]

mawk: scripts/gen-sorted.awk: line 19:runaway regular expression /, "", subd ...

rm -f/mnt/custom_linux/sources/build/stamp.o; >/mnt/custom_linux/sources/build/stamp.o

rm -f/mnt/custom_linux/sources/build/stamp.os; >/mnt/custom_linux/sources/build/stamp.os

rm -f/mnt/custom_linux/sources/build/stamp.oS; >/mnt/custom_linux/sources/build/stamp.oS

 

sudo apt-get installgawk

CFLAGS="-O2 -U_FORTIFY_SOURCE-fno-stack-protector" ../configure --prefix=/opt/glibc-2.14

make -j82>/dev/stdout > make.log

 

glibc-2.14/build/libc_pic.a(init-first.os):(.data+0x0):multiple definition of `__libc_multiple_libcs'

glibc-2.14/build/elf/dl-allobjs.os:/home/yubing/glibc-2.14/elf/rtld.c:657:first defined here

glibc-2.14/build/libc_pic.a(dl-addr.os): Infunction `_dl_addr_inside_object':

glibc-2.14/elf/dl-addr.c:158: multipledefinition of `_dl_addr_inside_object&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值