Witam. Chciałem się nauczyć chociaż podstaw tworzenia pliku Makefile i mam taki problem. Stworzyłem prosty plik Makefile:
CXX = mingw32-g++
CXXFLAGS = -g
CC = mingw32-gcc-4.4.1
RESULTFILE = test.exe
MAINOBJS = main.o
ALLOBJS = main.o
main.o: main.cpp
$(CXX) $(CXXFLAGS) $^ -o $@
$(RESULTFILE): $(MAINOBJS)
$(CXX) $(CXXFLAGS) $^ -o $@
clean:
rm -f $(ALLOBJS)
.PHONY: ALLOBJS clean
main.cpp:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!";
cin.get();
return 0;
}
i wywołuje to z wiersza poleceń (mam w zmiennej systemowej globalnej PATH ustawioną ścieżkę do mingw\bin) o tak:
mingw32-make
Chciałbym, aby ten plik stworzył mi plik main.o, następnie ten pojedynczy plik.o "zalinkował" main.exe (w sumie bezsensownie jest to nazwane w tym wypadku linkowaniem, bo wstarczy zmienić rozszerzenie, ale później chciałem tam dodać więcej plików .o stąd takie obejście). Później ten plik plik main.o byłby skasowany. Plik jednak tworzy mi sam main.o i na tym koniec.
z góry dziękuję za pomoc