質問: どのように他のコンパイラに委譲せずに.cuファイルでnvccを呼び出すことができますか? 私はJCudaを使ってCUDAアプリケーションを構築しています。 Ubuntuの最新バージョンなど、一部のプラットフォームでは、デフォルトのgccバージョンはnvccの互換バージョンよりも大きいです。これは私の開発環境を面倒にすることになります。私はPTXファイル(ポータブルであるはずです)の生成のみに気を使うので、私は実際にGCCや他のコンパイラは必要ないという印象を受けています。このタイプのコードをコンパイルするためのデフォルトコンパイラなしでnvccを呼び出すことは可能ですか?これにより、Javaコードのカーネルをコンパイルしやすくなり、どのプラットフォームでも利用できるようになります。
回答: 私はまだコンパイラスイートが必要だと思います(たとえば、Linuxのnvccはlibgcc_s.so.1が必要です)が、-ptxフラグをnvccにするとホストコードのコンパイルはスキップされます。そして、ptx世代でさえ、私が知っている限り、マクロ展開のためにプリプロセッサに依存しています。