How to make GCC output to stdout?

2020-05-24 20:56发布

问题:

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



标签: c gcc