-
Data: 2018-08-20 17:09:17
Temat: Makefile
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Minęło trochę czasu. odkąd ostatnio pisałem/modyfikowałem na własne
potrzeby Makefile. W bardzo małych projektach zwykle podawałem po prostu
nazwy plików, przy większych stosowałem wzór pożyczony z jakiegoś
internetowego tutorialu. jego główna część wyglądała następująco:
.PHONY: all clean
all: $(TARGET).hex
$(HEXDIR)/%.hex: $(OBJDIR)/%.ihx
$(S) packihx $^ > $@
$(OBJDIR)/%.ihx: $(OBJ)
$(S) $(CC) -o $@ $(LFLAGS) $^
$(OBJDIR)/%.c.rel: $(SRCDIR)/%.c
$(S) $(CC) -o $@ $(CFLAGS) -c $^
$(OBJDIR)/%.asm.rel: $(SRCDIR)/%.asm
$(S) $(AS) $(AFLAGS) -o $@ $^
clean:
$(S) rm -rf $(OBJDIR)/*
$(S) rm -rf $(TARGET).hex
Z powodzeniem wykorzystywałem go z 8051 (SDCC) oraz podczas pisania
mniejszych projektów pod AVR-y, szczególnie gdy na danym komputerze nie
miałem akurat zainstalowanego Atmel Studio.
Teraz próbuję go przerobić na potrzeby pewnego projektu dla 6502
(kompilator CC65). Sam projekt się kompiluje, jeśli wpisać polecenia
ręcznie albo podam je sekwencyjnie, plik po pliku w Makefile. Próba
zautomatyzowania go jak powyżej się nie udaje. Wydaje mi się, że wynika
to z tego, że projekt składa się zarówno z plików *.c jak i
asemblerowego kodu w plikach *.s.
Co chcę uzyskać?
1) w katalogu projektu mam podkatalogi src, inc, obj, lib oraz hex.
Pierwszy zawiera pliki źródłowe (zarówno *.c, jak i *.s), drugi pliki
nagłówkowe *.h, do trzeciego trafiają skompilowane ploki obiektowe *.o,
a w trzecim trzymam przygotowaną wcześniej bibliotekę oraz plik cfg,
wykorzystywane przez linker.
2) W pierwszej fazie kompilator cc65 bierze wszystkie pliki *.c i
generuje na ich podstawie pliki asemblerowe *.s (z tego co wiem CC65 nie
potrafi od razu wygenerować pliku binarnego z kodu C).
3) Następnie asembler ca65 na podstawie każdego pliku *.s (zarówno tego
wygenerowanego przez cc65, jak i znajdującego się tam od początku)
generuje plik *.o, umieszczając go w folderze obj.
4) Linker ld64 łączy wszystkie pliki *.o z tego folderu w jeden plik
binarny.
5) Na końcu plik binarny jest konwertowany do formatu *.hex, ale to
akurat najmniejszy problem.
Ktoś mi powie jak to powinno wyglądać?
Następne wpisy z tego wątku
- 20.08.18 17:30 s...@g...com
- 20.08.18 22:09 Marek
- 22.08.18 12:58 Queequeg
- 22.08.18 13:01 Queequeg
- 22.08.18 13:05 Queequeg
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 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ę? ;-)
- 2025-12-21 Norweski przepis na pozbywanie się uchodźców odwiedzających kraj z którego "uciekli"




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