私はmkl_lapack.hライブラリをリンクするmpiccコンパイラを使用して、mac os xで実行可能ファイルをビルドするために使用するMakefileを持っています。 このMakefileは完全に動作していますが、唯一の問題は、myfile.cをリンクする必要がある場合に、他の.cファイルをリンクするEigenvalues.cをコンパイルしたい場合、何を追加するべきか分かりません。 Makefileで?Makefileに追加のソースファイルを追加するには
MKL_INCLUDE=/opt/intel/mkl/include
MKLROOT=/opt/intel/mkl/lib
CC = mpicc
LD = mpicc
IFLAGS = -I$(MKL_INCLUDE)
CFLAGS = -Wall -O2 $(IFLAGS) -std=c99
LFLAGS = $(MKLROOT)/libmkl_intel_lp64.a $(MKLROOT)/libmkl_sequential.a $(MKLROOT)/libmkl_core.a -lpthread -lm
PROGRAMS = Eigenvalues
all: $(PROGRAMS)
Eigenvalues:
$(CC) $(CFLAGS) -o [email protected] $^ $(LFLAGS)
%.o: %.c
@echo C compiling [email protected]
$(CC) -c $(CFLAGS) -o [email protected] $<
clean:
rm -rf *.o $(PROGRAMS)
Eigenvalues: Eigenvalues.c
LFLAGSは伝統的にlexに渡されるフラグの名前ですが、LDFLAGSはリンカーに渡されるフラグに使用される名前です。参照:http://pubs.opengroup.org/onlinepubs/9699919799/utilities/make.html –