gpt4 book ai didi

c++ - eclipse 朱诺 CDT : Incompatibility with C++11 and debugging issues

转载 作者:太空宇宙 更新时间:2023-11-04 11:55:55 27 4
gpt4 key购买 nike

从 Indigo 切换到 Ubuntu 12.04 后,使用最新的 Eclipse Juno 会遇到各种问题。
我在以下位置设置了标志:
项目 -> 属性 -> C/C++ 构建 -> 设置 -> 工具设置 -> Cross G++ 编译器

  • -> 杂项:-std=c++11
  • -> 预处理器:__GXX_EXPERIMENTAL_CXX0X__ (也在 C/C++ General -> Paths and Symbols 中设置)

目前,我正在编译在 Indigo 中使用 C++03 编译良好的代码。更改为 C++11 后,我确实遇到了一些可能是由于 g++ 扩展引起的错误,我已经修复了它们。

下面是我要解决的问题:

  1. 如果我切换回正常的 C++ 编译,则会收到一个错误: This file requires compiler and library support for the \ ISO C++
    2011 standard. This support is currently experimental, and must be \
    enabled with the -std=c++11 or -std=gnu++11 compiler options.
    从文件 c++0x_warning.h .即使有,错误也不会消失清理构建或重新启动 eclipse。
  2. 调试没有按预期进行。执行确实停止在给定的断点,但是当我将鼠标悬停在变量上时,它不会显示任何值。在 Indigo 中,它曾经显示它。做了很多试验和Eclipse 的各种设置错误,但没有运气。还检查了,窗口 -> 首选项 -> C/C++ -> 悬停,但无法更改那里有任何东西。
  3. 包括<unrodered_map>工作正常,但如果 std::unordered_map<>使用然后它开始给出错误。目前,我最不关心这个问题。

如果有人可以建议使用 Eclipse (Juno) 进行有效调试的链接或方法,那么它对 future 的访问者也有很大帮助。

注意:我在 SO 中引用了几个线程,但没有一个有用:
Eclipse CDT C++11/C++0x support
Cannot set Eclipse Juno C++ with std=c++11
Eclipse CDT Juno - Toolchain issue

最佳答案

首先,我从全新安装开始,作为 future 的引用,我想展示如何从头开始安装和使用 GCC 与 Eclipse。

首先到Ubuntu软件中心,下载最新版本的GCC,即GCC 4.8。现在,您可能会在执行此操作时遇到问题,因此我建议您在尝试查找该软件时输入 gcc-4.8。 g++ 也是一样,你输入 g++4.8 就可以得到你想要的。确保你有正确的版本。由于 Linux 的开源特性,往往存在很多涉及版本的问题。

-> : 按回车键

现在,打开您的终端,然后输入以下内容:

  • sudo su - -> 这会给你特殊的 root 权限。
  • 现在它会询问您的密码,输入密码 ->
  • !警告,这部分不要出错,因为 root 可以造成很大的损害!
  • 现在更改目录,输入 cd/usr/bin ->
  • 输入 ls -l gcc* g++* cpp* ->
  • 这将向您显示可用于这些数据类型的符号链接(symbolic link)
  • 输入ln -s g++-4.8 g++->
  • 输入 rm cpp gcc ->
  • ln -s gcc-4.8 gcc ->
  • ln -s cpp-4.8 cpp ->
  • 现在 CTRL + D,两次,这将使您离开终端。

现在,打开eclipse。转到 Preferences>New CDT Wizard(或类似的东西) enter image description here确保选择了 Linux GCC。按下 Make Toochains preferred。现在,当您打开一个项目时,请确保转到项目属性,然后执行以下操作:

  • C/C++ 构建 > 设置 > 杂项。 > 在其他标记下添加此 -std=c++11enter image description here

  • 与 GCC C 编译器相同,但这次,您添加 -std=gnu11

这应该设置一切。不要使用 Cross GCC,它总是给我带来问题。

关于c++ - eclipse 朱诺 CDT : Incompatibility with C++11 and debugging issues,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16161063/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com