我有以下的Makefile使用GSL程序:編譯/鏈接GSL
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
任何想法有什麼不對?
P.S. - 我知道-c標誌涉及到它,但刪除它會導致其他問題。
「我知道-c標誌參與其中,但刪除它會導致其他問題。」 - 當然是的。您應該刪除'$(GSLFLAGS)'。 –