通过终端构建时更改构建输出目录

Mar*_*ius 3 c macos terminal build output-directory

最近,我发现了一个程序,它是IDE和文本编辑器之间的混合体.它支持语言的语法,它可以进行格式化,但它不会为您构建和运行程序.我正在运行Mac OS X 10.6.8.我查看了如何使用Terminal应用程序构建C代码.格式为:

gcc [file]
Run Code Online (Sandbox Code Playgroud)

很简单.问题是我无法更改输出构建文件的目录,也无法更改名称.默认情况下,编译的每个文件都在主目录中以"a.out"的名称输出.如何指定输出目录和名称?

谢谢!

Kev*_*vin 8

gcc有一个-o更改输出名称的选项.您可以在那里指定路径.例如:

$ ls
program.c
$ gcc program.c -o program
$ ls
program   program.c
$ mkdir bin
$ gcc program.c -o bin/program
$ ls bin
program
$ 
Run Code Online (Sandbox Code Playgroud)

您可能还应该了解一些其他常见选项:

  • -std=c99,-std=gnu99:使用c99标准/与gnu扩展名.
  • -Wall,-Wextra,-pedantic:启用额外的警告.
  • -O0 -ggdb:使用调试符号进行编译.查找如何使用gdb.
  • -O2:使用独立于处理器的优化进行编译.不兼容-O0.