GCC is normally instructed to output to a file via the -o
switch. If this isn't provided it seems to decide on an appropriate name and output to that. How do I make GCC write its generated output to stdout?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
gcc -o /dev/stdout foo.c
Note that /dev/stdout
is defined as a symlink: /dev/stdout -> /proc/self/fd/1
.
回答2:
You can use -o-, for example to print an assembly listing:
gcc -S -o- in.c
回答3:
Um, what are you going to do with a binary object file dumped to stdout? anyway, some programs accept the '-' (single minus, no quotes) character as replacement for stdout. If you're on linux, you can do -o /dev/fd/1