12
Robię makefile i jednym z celów jest exptrtest.Jak używać g ++ do tworzenia pliku object z tą nazwą, nazwa mojego pliku cpp jest exprtest.cpp not exptrtest.cpp?Jak używać g ++ do tworzenia pliku obiektowego o konkretnej nazwie
exptrtest.o: exprtest.cpp
g++ -Wall -g -c exprtest.cpp
aby uczynić go bardziej jasne, to jest mój makefile:
all: exprtest
exprtest: exptrtest.o driver.o parser.tab.o scanner.o
g++ -Wall -g -o exprtest exptrtest.o driver.o parser.tab.o scanner.o
exptrtest.o: exprtest.cpp
g++ -Wall -g -c exptrtest.o exprtest.cpp
driver.o: driver.cpp scanner.hpp driver.hpp
g++ -Wall -g -c driver.cpp
parser.tab.o: parser.tab.hpp parser.tab.cpp
bison parser.ypp
g++ -Wall -g -c parser.tab.cpp
scanner.o: scanner.cpp scanner.hpp
flex -t scanner.ll > scanner.cpp
g++ -Wall -g -c scanner.cpp
clean:
rm parser.tab.hpp parser.tab.cpp scanner.cpp
Dostaję błąd: „g ++: error: exptrtest.o: Nie ma takiego pliku lub katalogu Producent: * [exprtest] Błąd 1 "
"g ++ -c nazwa.cpp" utworzy nazwę.o. Użyj opcji -o, aby utworzyć inną nazwę wyjściową. –