如何通过终端运行Xcode编译生成的C++程序?
在Mac的Xcode中查找编译后的可执行文件
问题描述
在Windows或Linux的简易IDE中,编译.cpp文件后,Windows系统会生成可执行文件,可在DOS中输入filename.exe运行;Linux系统则可在终端中通过./filename运行二进制文件。
我获得了一台旧款Mac,在Mac上使用Xcode时,编译后只看到.cpp文件,找不到可通过终端运行的文件。我知道Xcode底部有模拟运行过程的输出小窗口,但我希望通过终端学习和测试代码。请问我遗漏了什么?可执行文件在哪里?
抱歉我知识不足,但每个人都有入门的阶段...

解决方法
Xcode默认会把编译后的可执行文件存放在隐藏的DerivedData目录中,这个目录不在你的项目文件夹内,所以直接找不到。以下是几种快速定位和设置的方法:
方法1:从Xcode直接定位到文件
- 打开Xcode项目,先按
Cmd+B重新编译一次确保产物已生成 - 在左侧项目导航栏顶部的
Targets列表中,找到和项目同名的可执行目标 - 右键点击该目标,选择Show in Finder,即可直接跳转到可执行文件所在的文件夹
方法2:通过构建日志查看完整路径
- 编译完成后,按
Cmd+9打开Report Navigator(报告导航栏) - 在列表中找到最新的构建记录,点击展开详情
- 在构建步骤中找到包含可执行文件路径的条目,复制该路径到终端,直接输入即可运行,或者cd到对应目录后用
./可执行文件名运行
方法3:自定义输出目录(长期更方便)
如果不想每次都找隐藏目录,可以修改设置让可执行文件输出到项目文件夹内:
- 选中项目目标,切换到Build Settings标签页
- 在搜索框中输入
Build Products Path,将默认值$(BUILD_DIR)修改为$(SRCROOT)/Build($(SRCROOT)代表你的项目根目录) - 重新编译后,就能在项目文件夹下的
Build目录中找到可执行文件
内容的提问来源于stack exchange,提问作者George
相关产品推荐
相关产品推荐

