【发布时间】:2011-05-02 09:09:02
【问题描述】:
我刚刚在华硕 EeePC 上网本上升级到 Ubuntu 11.04,但 G++ 出现问题。使用 G++ 编译任何程序,即使是简单的“Hello World”,无论是使用 iostream、cstdio 还是 stdio.h,都会失败并显示以下消息:
/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5.2/libstdc++.so: undefined reference to `_Unwind_GetIPInfo@GCC_4.2.0'
collect2: ld returned 1 exit status
我使用 Synaptic 包管理器。在升级之前,Ubuntu 提供了 GCC 4.4,尽管我也通过另一个存储库安装了 GCC 4.5 (gcc-4.5)。 GCC 4.5 现在是 Ubuntu 11.04 的默认设置。
我认为问题可能与 libgcc 有关。我尝试重新安装 GCC,但无法删除 libgcc:首先,Synaptic 包管理器报告某处有损坏的包,并停止了我的尝试;但我也注意到删除 libgcc 需要删除几乎所有应用程序,包括 apt 和 Firefox。
我也尝试了 gcc-snapshot 包;不幸的是,它给出了上面列出的相同错误。
有什么方法可以使用 Synaptic 包管理器来获取 G++ 的最新工作版本?
【问题讨论】:
-
我am假设您在升级编译器后重新编译程序?
-
是的,错误是编译错误。
-
呃。显然 :) 给我上色很傻
-
@user643722 尝试使用
-vg++ 选项进行编译,它提供了大量可能对您的案例有用的信息 -
@user643722 既然您自己找到了原因,那么您发布问题的答案并接受它是公平的:)