对于使用 gsl 的程序,我有以下 Makefile:
CXX = g++
ARCH = -mtune=generic
COFLAGS = $(ARCH) -O3 -pipe -I./gsl
CXXFLAGS = -Wall $(COFLAGS)
PROGRAMS = myProgram
GSLFLAGS= -L./gsl/.libs -lgsl -L./gsl/cblas/.libs -lgslcblas -lm
all: $(PROGRAMS)
myProgram: myProgram.cpp common.o
$(CXX) $(CXXFLAGS) $(GSLFLAGS) myProgram.cpp common.o -o myProgram
common.o: common.cpp common.h
common.o: common.h common.cpp
$(CXX) $(CXXFLAGS) $(BOOSTFLAGS) $(GSLFLAGS) -c common.cpp
我在编译/链接期间得到以下输出:
g++: -lgsl: linker input file unused because linking not done
知道有什么问题吗?
PS - 我知道 -c 标志参与其中,但删除它会导致其他问题。