0

私は、HpUx プリプロセッサーの出力に対して特定のアクションを実行し、必要な詳細を取得するために特別に作成したスクリプトを作成しました。

  • HpUx-ia64。
  • Linux-x86_64。

次に、同じものを Linux に移行する必要があります。g++ -ELinux 用にツールを完全に書き直す代わりに、ソース名で hpux と同じ (Linux) 出力を取得するにはどうすればよいですかaCC -E

4

1 に答える 1

0

g++ -ELinux 用にツールを完全に書き直す代わりに、ソース名で hpux と同じ (Linux) 出力を取得するにはどうすればよいですかaCC -E

短い答え:いいえ。

$compiler -Eより長い答え: コンパイラは、プログラムをかなり正確に表している限り、通常、出力がどのように見えるかは気にしません。$compiler -E foo.cc一部のコンパイラは、 whenの出力をコンパイルすることさえできません$compiler -c foo.cc(これはバグですが、優先度は低いです)。

前処理されたファイル (スクリプト) で動作するツールまたはスクリプトは、有効な前処理された結果を受け入れる必要があります。すべてのコンパイラがまったく同じ前処理された出力を生成すると主張することは無意味です。それは起こらないでしょう。

さらに長い答え:g++オープン ソースです。どちらかの入力を受け入れるようにスクリプトを修正するよりも、g++出力に一致するように修正する方が簡単だと思われる場合は、それを実行する力があります (ただし、後者よりも前者を実行する方が少なくとも 1000 倍難しいと予測しています)。 .aCC

最後に、排除しようとしている違いの詳細を提供しませんでした。あなたがそうしていたら、この(または他の)答えはもっと役に立ったかもしれません。

于 2015-08-15T07:08:05.353 に答える