【问题标题】:Using GCC through Xcode to compile basic programs通过Xcode使用GCC编译基本程序
【发布时间】:2010-11-28 07:01:51
【问题描述】:

所以,我是一名全新的 CS 学生,使用 Mac,我正在为我的一门课程学习 C++。我有一个关于如何编译我的超级基本 C++ 程序的愚蠢问题。

我安装了 Xcode,我正在查看文档以尝试弄清楚如何使用它(我高度怀疑它对于我现在正在做的事情来说过于强大了)并最终进入终端并继续“gcc [文件名]”。而且我有一个充满文本的屏幕,以“未定义符号”开头,并继续尝试引用事物,所以我想知道我是否没有在某个地方连接一些东西,尤其是当我实际上在打开 C++ 程序的 Xcode,大部分菜单项都是灰色的。

所以。用非常基本的术语来说。我错过了什么,我该如何解决?有 Xcode 的基本指南吗?大多数文档都是针对真正的开发人员的,我完全错过了很多假设的内容。

【问题讨论】:

  • 如果你没有看到,我也会在这里评论:听起来马丁的解决方案是正确的,你只是没有真正运行程序。如果您还没有,请查看我的评论。
  • 谢谢,终于看到你的评论,在下面回复了。

标签: c++ xcode macos gcc compiler-construction


【解决方案1】:

如果安装了 XCode,那么一切都设置正确。

如果您在命令行中键入 gcc,那么您调用了“C”编译器(而不是 C++ 编译器)。通常这并不重要,因为 GCC 通过查看文件扩展名来进行补偿。但重要的是它没有使用正确的 C++ 标志调用链接器。

你应该做的(从命令行)是使用 g++

g++ <fileName>.cpp

默认情况下,输出文件是 a.out 并放置在同一目录中。
g++ 有一个标志来指定不同的输出名称 -o

g++ -o <outputName> <fileName>.cpp 

【讨论】:

  • 这可以解释很多——但是当我尝试它时,终端只是给了我一个新行。没有错误,什么都没有。 (这是一个要求多个输入的程序,应该返回一个输出,我已经在另一台计算机上测试过。)
  • @KLR:你知道 GCC/G++ 只会编译程序,对吧?它不会为您运行程序。如果您没有提供输出名称,它将调用已编译的程序“a.out”。
  • 好吧。我现在觉得很笨。好的,那么编译后的程序会和原文件在同一个目录吗?以及如何提供输出名称?
猜你喜欢
  • 1970-01-01
  • 2011-03-11
  • 1970-01-01
  • 2019-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多