-
Data: 2018-08-22 13:05:33
Temat: Re: Makefile
Od: q...@t...no1 (Queequeg) szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Queequeg <q...@t...no1> wrote:
Jeszcze wyjaśnienie, co to robi.
> NAME = maketest
Ustawia nazwę projektu (pliku .bin i .hex), jest używana niżej.
> SRCS = maketest.c maketest2.c
Lista plików źródłowych.
> ASMS = $(SRCS:.c=.s)
Lista plików .s stworzona z listy plików źródłowych zamieniając .c na .s.
> OBJS = $(ASMS:.s=.o)
Lista plików .o stworzona jak wyżej (z listy plików .s, zamieniając .s na
.o).
> .PHONY: all clean
Nawet jak będzie istniał plik all i clean, to i tak wykona te targety.
> all: $(NAME).hex
Określa, że make all będzie miało taki sam efekt, jak make maketest.hex
(make tworzy plik, all to target a nie plik).
> %.s:
> cc65 -o $@ $<
Określa regułę dla utworzenia pliku .s. $@ to plik wyjściowy (.s), $<
wejściowy (.c).
> %.o:
> ca65 -o $@ $<
Analogicznie.
> $(ASMS): $(SRCS)
Tworzy zależność plików .s od plików .c.
> $(OBJS): $(ASMS)
Analogicznie .o od .s.
> $(NAME).bin: $(OBJS)
> ld64 -o $(NAME).bin $(OBJS)
Tworzy zależność pliku .bin od plików .o i tworzy regułę utworzenia tego
pliku z plików .o (z listy OBJS).
> $(NAME).hex: $(NAME).bin
> program_do_konwersji_do_hex $(NAME).hex $(NAME).bin
Tworzy zależność pliku .hex od pliku .bin i tworzy regułę, jak wyżej. W
testach też dodałem -o przed $(NAME).hex.
> clean:
> rm -f $(NAME).hex $(NAME).bin $(OBJS) $(ASMS)
Tworzy target kasujący pliki potworzone przez makefile, żeby make clean je
usunęło. Kasuje plik maketest.hex, maketest.bin, pliki .o i pliki .s.
--
https://www.youtube.com/watch?v=9lSzL1DqQn0
Najnowsze wątki z tej grupy
- Tfu! Przeklety prostokąt (czyli UPS i "sinus modyfikowany")
- Dalekopis T100 - problem z powrotem karetki
- Diody LED - oświetlenie na choinkę
- ale wiesz, że są gotowce?
- jak wykryć zapalenie żarówki?
- Cyna dylemat
- Mierniki poziomu glukozy (CGM, FGM)
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Kontrola nad prądem - sprawdź jak działa [apka - przyp. JMJ] eLicznik
- NETIA i hasło logowania
- Modulacja FM
- Najgorszy język programowania
- Kol. sukces po polsku: firma Szumisie sp. z o.o.
- Chińska Telefonia 6G - Chcą Nas Sterować Elektrycznie - Jak Kukiełki w Teatrze Lalek!!!
- RS-485 ale automatycznie dwukierunkowy
Najnowsze wątki
- 2025-12-24 Warszawa => Młodszy Specjalista ds. wsparcia sprzedaży <=
- 2025-12-24 New York Times zagrożeniem bezpieczeństwa narodowego USA - POTUS D. Trump
- 2025-12-24 Podżeganie?
- 2025-12-24 => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-12-24 otwarcie drugiej obwodnicy Trójmiasta
- 2025-12-24 Tfu! Przeklety prostokąt (czyli UPS i "sinus modyfikowany")
- 2025-12-23 Prezent dla kierowców od prezydenta Nawrockiego
- 2025-12-23 Warszawa => Asystent ds. Sprzedaży i Rozwoju Klienta <=
- 2025-12-23 Warszawa => Senior IT Recruitment Consultant <=
- 2025-12-22 czy wiedziałeś że?
- 2025-12-22 Unijne KOOOORWY mówią że WYCOFUJĄ się z zakazu rejestracji elektryków
- 2025-12-22 Białystok => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-22 Lublin => Project Manager <=
- 2025-12-22 Warszawa => Project Manager (AI and innovation) <=
- 2025-12-22 TVN oczekuje: Za Ziobrem BĘDZIE czerwona nota Interpolu! Czy może Interpol da drugi raz (w) dupę? ;-)




7 pułapek i okazji - zobacz co cię czeka podczas kupna mieszkania na wynajem