Измените Makefile, чтобы добавить библиотеку GSL - PullRequest
0 голосов
/ 13 мая 2018

У меня есть следующий make-файл, и я хотел бы также использовать библиотеку GSL. Вы знаете, как мне поступить? Сейчас я не могу найти правильный способ компиляции моего кода.

INCLDIR := include
OBJDIR  := obj
SRCDIR  := src
BINDIR  := bin

CC      := g++
VPATH   :=
LDFLAGS := -L/home/path/gsl/lib
LIBRARY :=
CFLAGS  := -g -Wall -I $(INCLDIR)

#Source and object files (automatic)
SRCS = $(wildcard $(SRCDIR)/*.cpp)
OBJS = $(subst $(SRCDIR)/,$(OBJDIR)/, $(subst .cpp,.o, $(SRCS)))

# Define here your main source files separated by spaces (without suffix!)
EXEC = main

#Phony = do not represent a file
#.PHONY: all
all : makedir $(EXEC)

# For multiple binaries
$(EXEC) : %: %.cpp $(OBJS)
    $(CC) $(CFLAGS) -o $(BINDIR)/$@ $^

$(OBJDIR)/%.o : $(SRCDIR)/%.cpp
    $(CC) $(CFLAGS) -c -o $@ $<

#Clean: delete every binaries and object files
.PHONY: clean
clean :
    rm -rf $(OBJDIR)/*
    rm -rf $(BINDIR)/*
#Building folders (-p : no error if folder do not exist)
.PHONY: makedir
makedir :
    mkdir -p $(BINDIR)
    mkdir -p $(OBJDIR)

1 Ответ

0 голосов
/ 14 мая 2018

Ваш LDFLAGS отсутствует -lgsl. До сих пор вы только указывали компоновщику, где искать, кроме каталогов по умолчанию.

...