0

CUDAを使用してacプロジェクト(c ++ではない)の主要な機能を高速化しようとしています。

何らかの理由で、ファイルの1つの名前を.cuに変更すると、Makefileに.cu拡張子を認識させることができません。

構成スクリプトと.am/.in / .depsファイルを使用していますが、これはよくわかりませんが、基本的にfile.cへの参照を取得し、すべてfile.cuに変更しましたが、ファイルが生成されます。 .o:ファイルが見つかりませんエラー。

トップレベルのmakeファイル

https://www.dropbox.com/s/g282qvbdu8pdas0/Makefile

Srcフォルダーmakefile

https://www.dropbox.com/s/b4pq026od8gauqi/Makefile

私が使用した検索コマンドは

grep -R -i "file.c"

そして、それらをすべてfile.cuに変更してから、configure、make clean、makeallを再実行しました。結果はFileNotFoundです。

拡張子がMakefileによって無視/受け入れられることに関係していると思いますが、Cでプログラムしてから長い時間が経ち、このような複雑なMakefileを使用したことがないため、修正方法がわかりません。 。

何か案は?

* PSまた、file.cuには現在コンパイルエラーがありますが、表示されるエラーメッセージはFile Not Foundであるため、問題ではないと思います。

4

2 に答える 2

1

oファイルからファイルを構築するには、ルールが必要cuです。

cudafile.o: cudafile.cu
    nvcc $(NVCC_FLAGS) -c %< -o $@

そのため、cu ファイルのルールも指定し、コンパイルに nvcc を使用する必要があります。

于 2013-03-11T08:06:19.953 に答える
0

次のガイドはそれをカバーしているようです...

http://mcclanahoochie.com/blog/2011/02/automake-and-cuda/

実際、リンクに記載されているアドバイスのほとんどは基本的なコンパイルには不要のようですが、何らかの理由で、autoconfを使用して構成ファイルを再作成すると機能することがわかりました。説明は思い浮かびません。

于 2013-03-14T04:18:09.957 に答える