Программы на C++. Форум разработчиков
Anonymous
Как я могу правильно скомпилировать/связать пищевое место в Linux Makefile?
Сообщение
Anonymous » 22 авг 2025, 04:44
В системе Linux я хочу скомпилировать и связывать единое целое, используя структуру gtest . Я использую следующий makefile :
Код: Выделить всё
CC := g++ # This is the main compiler
SRCDIR := src
BUILDDIR := build
TARGET := bin/myapp
TEST := tester
SRCEXT := cpp
SOURCES := $(shell find $(SRCDIR) -type f -name *.$(SRCEXT))
OBJECTS := $(patsubst $(SRCDIR)/%,$(BUILDDIR)/%,$(SOURCES:.$(SRCEXT)=.o))
CFLAGS := -g
LIB := -pthread -L lib -L /usr/local/lib -lsqlite3 -lboost_thread -lcrypto
INC := -I include
$(TARGET): $(OBJECTS)
@echo " Linking..."
@echo " $(CC) $^ -g -o $(TARGET) $(LIB)"; $(CC) $^ -o $(TARGET) $(LIB)
$(BUILDDIR)/%.o: $(SRCDIR)/%.$(SRCEXT)
@mkdir -p $(BUILDDIR)
@echo " $(CC) $(CFLAGS) $(INC) -c -o $@ $
Подробнее здесь: [url]https://stackoverflow.com/questions/27176373/how-can-i-compile-link-a-unittest-in-a-linux-makefile-correctly[/url]
1755827083
Anonymous
В системе Linux я хочу скомпилировать и связывать единое целое, используя структуру gtest . Я использую следующий makefile : [code]CC := g++ # This is the main compiler SRCDIR := src BUILDDIR := build TARGET := bin/myapp TEST := tester SRCEXT := cpp SOURCES := $(shell find $(SRCDIR) -type f -name *.$(SRCEXT)) OBJECTS := $(patsubst $(SRCDIR)/%,$(BUILDDIR)/%,$(SOURCES:.$(SRCEXT)=.o)) CFLAGS := -g LIB := -pthread -L lib -L /usr/local/lib -lsqlite3 -lboost_thread -lcrypto INC := -I include $(TARGET): $(OBJECTS) @echo " Linking..." @echo " $(CC) $^ -g -o $(TARGET) $(LIB)"; $(CC) $^ -o $(TARGET) $(LIB) $(BUILDDIR)/%.o: $(SRCDIR)/%.$(SRCEXT) @mkdir -p $(BUILDDIR) @echo " $(CC) $(CFLAGS) $(INC) -c -o $@ $ Подробнее здесь: [url]https://stackoverflow.com/questions/27176373/how-can-i-compile-link-a-unittest-in-a-linux-makefile-correctly[/url]