私はこれが誰かに明らかであることを願っています。私はmakefileを作成しています。これは特別なコンパイルが必要です。私はcudaファイルとC++ファイルをそれぞれ別々にコンパイルする必要があります。私はどのように私は自動的として指定するファイルリストからオブジェクトのリストを生成しないファイルを指定することができ、その後、project1:
で行をメークファイルへの依存関係の指定
CUDA_FILES := file1.cu file2.cu file3.cu
CPP_FILES := file4.cpp file5.cpp
# lots of options
#rules:
all: project1
project1: file1.o file2.o file3.o file4.o file5.o
$(LD) $(LDLIBS) $^ -o [email protected]
%.o: %.cu
$(CUDA) $(CUDA_ARCH) $(CUDA_OPTIONS) $(CUDA_INCLUDES) -Xcompiler "$(COMPILER OPTIONS" $^ -o [email protected]
の面で最終出力の依存関係を一覧表示したいです依存?
$ cat Makefile
OBJS = a.o b.o
foo: a.o b.o
$(LD) -o [email protected] $^
$ make
cc -c -o a.o a.c
cc -c -o b.o b.c
ld -o foo a.o b.o
編集:
ワイルドカードでファイルを検索するとどうなりますか?オブジェクトファイルが出力されません。 $ CUDA_FILES:= $(ワイルドカード* .cu) ' –
' $(CUDA_FILES:%.cur =%.o) 'と同様に' $(CPP_FILES) 'と同じです。 –