Ela*_*ich 3 ubuntu patch gcc g++
我正在尝试gcc-3.4
在最新的 Ubuntu 上使用。该软件包来自 debian 快照。
它可能假定不同的默认目录结构,因此例如我被迫给 it -I /usr/include/i386-linux-gnu/
,这是gcc-4
隐式假定的。
目前,它可以很好地编译我提供的所有内容,但无法链接。即使是最简单的可执行文件也会导致错误:
$ gcc-3.4 ~/tmp.cc -o ~/tmp
/usr/bin/ld: cannot find -lgcc_s
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
显然,您需要添加库/lib/i386-linux-gnu/libgcc_s.so.1
,编译器希望软链接/usr/lib/gcc/i486-linux-gnu/3.4.6/libgcc_s.so
指向正确的位置,但是:
$ ls -l /usr/lib/gcc/i486-linux-gnu/3.4.6/libgcc_s.so
lrwxrwxrwx 1 root root 18 2011-05-03 04:55 /usr/lib/gcc/i486-linux-gnu/3.4.6/libgcc_s.so -> /lib/libgcc_s.so.1
Run Code Online (Sandbox Code Playgroud)
和
$ ls /lib/libgcc_s.so.1
ls: /lib/libgcc_s.so.1: No such file or directory
Run Code Online (Sandbox Code Playgroud)
修复符号链接,一切都会好起来的
$ sudo ln /lib/i386-linux-gnu/libgcc_s.so.1 /usr/lib/gcc/i486-linux-gnu/3.4.6/libgcc_s.so
Run Code Online (Sandbox Code Playgroud)
现在它可以正常工作了!
$ g++-3.4 ~/tmp.cc -o ~/tmp
$
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12359 次 |
最近记录: |