【问题标题】:gcc command line on Mac OS X with XCode 2.5带有 XCode 2.5 的 Mac OS X 上的 gcc 命令行
【发布时间】:2010-12-31 22:02:46
【问题描述】:

我目前正在运行 Mac OS X 版本 10.5.8 的 MacBook Pro。我下载了 XCode 2.5 版并安装了它。

此外,我将 /XCode2.5/usr/bin 添加到我的 PATH 中。

这里是 hello.cc 程序:

#include <iostream>

int main(void)
{
  std::cout << "hello, world" << std:endl;
}

会发生以下情况: $> g++ hello.cc

hello.cc:在函数“int main()”中: hello.cc:5:错误:“cout”不是“std”的成员 hello.cc:5: 错误:‘endl’不是‘std’的成员

设置 PATH 是否不足以在 Mac 上从命令行运行 gcc 实用程序?

谢谢,

查理

【问题讨论】:

  • 那是 XCode 的一个非常老的版本(3.2.1 中的最新版本)。此外,您的代码有一个小错误,它应该是 std::endl (注意双冒号),而不是 std:endl。
  • 我尝试安装 3.2.1,但它似乎需要更新版本的 OS X。
  • 你运行的是什么版本的 OSX?

标签: xcode g++


【解决方案1】:

您在此处表示的代码中有错字:

  std::cout << "hello, world" << std:endl;
                                    ^
                                    |
                                  std::endl

但是,一旦我修复它似乎编译和运行良好(g++ 4.2.1 在 OS X 10.6.2 上与 XCode 一起安装)

【讨论】:

    【解决方案2】:

    这行得通:

    #include <iostream>
    using namespace std;
    
    int main()
    {
      cout << "hello, world" << endl;
      return 0;
    }
    

    【讨论】:

      【解决方案3】:

      已经有一段时间了——我记得从 Mac OS 安装 DVD(10.4?、10.5?)安装时,提供了两个版本的 gcc,一个用于 XCode,另一个用于命令行。从命令行使用的版本安装到 /usr/bin。我的 PATH 上没有 /XCode2.5/usr/bin,并且能够使用 gcc 等。我认为您可能想要不同的下载。安装到 /usr/bin 的 gcc 版本将在自动搜索的位置安装库。无需修改 PATH 或其他设置。

      另外,使用 MacPorts 安装更新版本的 gcc 也很容易。它们安装在 /opt/local/bin 中,必须修改 PATH。 MacPorts 版本使用修改后的名称,以免与 Apple 提供的标准版本冲突。

      【讨论】:

      • 我刚刚检查了我安装的 Mac 10.6.2,g++-4.2 和 gcc-4.2 的两个副本是逐字节相同的。
      【解决方案4】:

      经过一番搜索,我找到了指向 http://connect.apple.com 的链接,而不是 (developer.apple.com)。

      以前的站点在“下载 > 开发工具”下仍有指向 XCode 3.1.4 的链接

      一旦我下载并安装了它(并将我的 PATH 改回默认值),g++ 和 gcc 就可以正常工作了。

      感谢大家的快速建议。

      【讨论】:

        猜你喜欢
        • 2011-12-11
        • 1970-01-01
        • 2010-10-09
        • 1970-01-01
        • 2011-03-31
        • 2018-09-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多