如何指示gcc / clang将临时文件输出到特定目录

时间:2012-11-11 22:32:01

标签: gcc command-line g++ clang clang++

使用--save-temps选项保存临时文件时,gcc / clang将输出文件输出到与输入文件相同的目录中。是否有选项指示gcc将文件输出到其他目录。

OR

当不使用--save-temps选项时,临时文件在默认目录(即$ TMPDIR,如/ tmp)中创建,但是一旦创建了目标文件,它们就会被删除。有没有办法指示编译器保留这些文件而不是删除它们(我认为唯一的选择是--save-temps,它有上述问题)

1 个答案:

答案 0 :(得分:9)

如果您使用-save-temps=obj,则临时文件与输出文件放在同一目录中,例如。

gcc -save-temps=obj -o dir/foo.o foo.c

将创建dir/foo.i

显然,这在手册中有记录。 https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html列出了所有受支持的选项,并-save-temps链接到https://gcc.gnu.org/onlinedocs/gcc/Developer-Options.html