Ответ 1
Компилятор, вероятно, сказал бы вам:
-E or -x required when input is from standard input
Try
cat test.cpp | g++ -x c++ -
Код довольно прост:
test$ cat test.cpp
int main()
{
}
Есть ли способ скомпилировать код, который поступает со стандартного вывода?
Я пробовал это:
cat test.cpp | g++ -
и некоторые варианты, но ни один из них не выполнил исполняемый файл.
Просто некоторые разъяснения. У меня есть программа, которая предварительно обрабатывает файл и создает другой файл, который я хочу скомпилировать. Я думал о том, что не создаю этот промежуточный файл, но вместо этого создаю объектный файл напрямую.
Компилятор, вероятно, сказал бы вам:
-E or -x required when input is from standard input
Try
cat test.cpp | g++ -x c++ -
Вы пробовали это?
$ cat tst.cpp | g++ -x c++ -
Я только что попробовал это под Cygwin и не имел проблем.