【问题标题】:How would I get a project to run in Terminal through Xcode?我如何让一个项目通过 Xcode 在终端中运行?
【发布时间】:2012-02-20 04:01:07
【问题描述】:

我是否可以在 Xcode 中运行并使用 g++ 编译器编译我的项目,然后打开终端窗口并运行它?

我非常希望 Xcode 在我点击运行时运行这些命令:

g++ [source]
./a.out

在某个时候,程序运行时会打开一个终端窗口。

我该怎么做(如果可能的话)?

【问题讨论】:

  • @JeshuaLacock 是的,我做到了。感谢您的回复。
  • 所以这没有帮助?它为你做了什么?
  • @JeshuaLacock 查看我刚刚发布的答案。因为没有一个答案能以我希望的方式解决问题,所以我不会选择最佳答案。不过还是谢谢你的帮助:)
  • NP,但我只是好奇你的格式(颜色等)是否在运行 cat /tty/... 后出现在终端中?
  • 如果这对您很重要,请通过提交雷达developer.apple.com/bugreporter 或使用反馈网站apple.com/feedback/macosx.html 告知 Apple

标签: c++ xcode terminal g++


【解决方案1】:

我不得不在一个终端窗口中运行我的程序,我在 Xcode 中编码时一直保持打开状态。每当我在 Xcode 中构建程序时,我都会让 Xcode 将程序编译为“a.out”文件。我通过运行“运行脚本”来做到这一点。我是这样做的:

  • 转到可以编辑构建设置的屏幕。
  • 在侧边菜单的“目标”下,点击您的项目
  • 转到“构建阶段”选项卡并单击“添加构建阶段”按钮
  • 从下拉列表中选择“添加运行脚本”
  • 然后在shell命令框下的框中输入您希望Xcode在构建程序时执行的操作。我的命令是这样的:

    cd [path to program]

    g++ [program]

(我无法让块代码格式在这里工作)。

现在我要做的就是在程序目录中保持一个终端窗口打开。每当我需要在终端中运行程序时,我都会运行a.out。不是完全自动化的,但只比我希望的多一步,这还不错。

【讨论】:

    【解决方案2】:

    您可以通过更改构建设置来使用 g++ 编译它(我敢肯定,其他人知道细节)。此外,您可以查看该方案以找出它在哪里构建可执行文件,从哪里可以使用终端。但是,我不知道您为什么要这样做.. 调试器和日志还不够吗?

    【讨论】:

    • 我想这样做的原因不是因为日志或调试器。我正在从事的项目通过命令行运行。因为它使用文本/背景颜色之类的东西,所以我最好在运行时通过终端看到它。
    • 啊。好吧,您还可以在方案中设置自定义编译文件夹,而不是默认的。但是,我认为没有办法让 xcode 直接打开终端。
    【解决方案3】:

    实际上,这就是 XCode 在您点击运行时所做的事情。

    “终端”窗口是您在“所有输出”窗口中看到的(在 XCode 4 之前称为控制台)。

    您可以像在终端窗口一样在该窗口中输入输入......

    编辑:

    您可以在实际终端中从您的应用中看到相同的输出。当您运行应用程序时,您将在“所有输出”窗口中获得类似这样的输出:

    GNU gdb 6.3.50-20050815 (Apple version gdb-1705) (Fri Jul  1 10:44:54 UTC 2011)
    Copyright 2004 Free Software Foundation, Inc.
    GDB is free software, covered by the GNU General Public License, and you are
    welcome to change it and/or distribute copies of it under certain conditions.
    Type "show copying" to see the conditions.
    There is absolutely no warranty for GDB.  Type "show warranty" for details.
    This GDB was configured as "x86_64-apple-darwin".tty /dev/ttys010
    [Switching to process 22261 thread 0x0]
    

    注意tty,在这个例子中是/dev/ttys010

    现在,打开一个终端窗口并 cat tty:

    cat /dev/ttys010
    

    您现在将在该终端窗口中看到程序的输出。

    【讨论】:

    • 我知道,从技术上讲,它是一个“终端”窗口。但是,我需要能够看到在该窗口中看不到的颜色转义码。
    猜你喜欢
    • 2013-09-21
    • 2017-01-25
    • 1970-01-01
    • 1970-01-01
    • 2021-01-25
    • 2011-11-21
    • 2020-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多