Xcode命令行工具 - 如何在终端中运行?

sol*_*eil 7 xcode command-line

在Xcode中创建一个命令行工具项目时,你可以在main.m中得到它:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

    @autoreleasepool {

        // insert code here...
        NSLog(@"Hello, World!");


    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我可以从Xcode运行它.但我想编译它,以便我可以从终端运行它.步骤是什么?

Bob*_*phy 9

假设您的可执行文件名为"my_program",它位于"/ foo/bar/Debug"目录中:

cd /foo/bar
./my_program
Run Code Online (Sandbox Code Playgroud)

如果您不确定如何找到程序文件本身,可以右键单击它(即:"产品")和"在Finder中显示",如此屏幕截图所示:

在此输入图像描述

  • 请注意,可执行文件位于与源代码完全独立的位置。像“~/Library/Developer/Xcode/DerivedData/HelloWorld-gnrlmuhyaotljugurctzowgqmkfy/Build/Products/Debug-iphonesimulator/HelloWorld.app”之类的东西。 (2认同)

Pat*_*ick 5

您可以通过编辑方案在每次运行应用程序时启动终端。我相信这可以从 Xcode 8.0 中获得。

  1. 使用权 Edit Scheme

    编辑方案

  2. 切换ConsoleUse XcodeUse Terminal

    安慰

  • 此功能似乎已从 Xcode (8.2.1) 中消失,有关如何恢复它的任何提示? (4认同)
  • 仍然没有它,这是另一个项目:p 但仍然是 iOS 项目。必须仅限于 OSX 的 imho (2认同)

jol*_*uly 5

在Xcode 9中,您可以尝试以下操作(2018年6月对我有用):

  1. 代替“编辑方案”,单击“新方案”,为其命名并保存
  2. 现在选择您刚刚创建的新方案,然后单击“编辑方案”
  3. 转到“信息”标签,然后在“可执行文件”菜单中选择“其他...”
  4. 在文件窗口中,转到搜索输入字段并键入“ terminal”,然后在找到它时单击其图标。现在,您应该在“可执行文件”字段中看到“ Terminal.app”
  5. 转到“参数”标签,点击+,然后将此行复制并粘贴到此处: ${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}
  6. 单击“关闭”,然后在选择新方案的情况下运行程序

通常,Xcode将为您打开终端。如果没有,您也可以在“信息”标签中关闭所有与调试相关的字段。希望这可以帮助!

完整的教程在这里:https : //www.raywenderlich.com/163134/command-line-programs-macos-tutorial-2

  • 我需要从我的项目名称和文件夹中删除空格才能完成这项工作。 (2认同)