dodałem opcje -c do CFLAGS, i mam taki kompunikat:
ksardas@ksardas-NC-V3-371-54TF:~/Dokumenty/programowanie/progGL$ make
clang++ -Wall -Wextra -pedantic -g -std=c++14 -c -lSDL2 -o prog0002 prog0002.cpp
clang: warning: -lSDL2: 'linker' input unused [-Wunused-command-line-argument]
prog0002.cpp:3:14: warning: unused parameter 'argc' [-Wunused-parameter]
int main(int argc, char **argv)
^
prog0002.cpp:3:27: warning: unused parameter 'argv' [-Wunused-parameter]
int main(int argc, char **argv)
^
2 warnings generated.
clang++ -Wall -Wextra -pedantic -g -std=c++14 -c -lSDL2 -o prog0001 prog0001.cpp
clang: warning: -lSDL2: 'linker' input unused [-Wunused-command-line-argument]
prog0001.cpp:6:14: warning: unused parameter 'argc' [-Wunused-parameter]
int main(int argc, char **argv)
^
prog0001.cpp:6:27: warning: unused parameter 'argv' [-Wunused-parameter]
int main(int argc, char **argv)
^
2 warnings generated.
clang++ -Wall -Wextra -pedantic -g -std=c++14 -c -lSDL2 -o window window.cpp
clang: warning: -lSDL2: 'linker' input unused [-Wunused-command-line-argument]
To próbujesz skompilować każdy z tych plików jako wykonywalny. Opcja -c stworzy Ci pliki .o, które potem możesz skonsolidować w jedną binarkę.
Inna opcja to podać do wywołania kompilatora wszystkie pliki źródłowe. Wtedy sam sobie poradzi.
jak skonsolidować plik w jedną binarkę z użyciem Makefile którego utworzyłem??
CXX = clang++
INC=
LIB= -lSDL2
CFLAGS = -Wall -Wextra -pedantic -g -std=c++14 -c
SRCS = $(wildcard *.cpp)
PROGS = $(patsubst %.cpp,%,$(SRCS))
all: $(PROGS)
%: %.cpp
$(CXX) $(CFLAGS) $(INC) $(LIB) -o $@ $<
.PHONY: clean
clean:
@echo usuwam gotowe pliki
rm -f $(PROGS)