-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin1!goblin.
stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.new
s.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Newsgroups: pl.misc.elektronika
X-Mozilla-News-Host: news://news.tpi.pl:119
From: Atlantis <m...@w...pl>
Subject: Makefile
Openpgp: preference=signencrypt
Autocrypt: addr=m...@w...pl; keydata=
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
AdKy5TQxdS7G
Date: Mon, 20 Aug 2018 17:09:17 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
Thunderbird/52.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: pl
Content-Transfer-Encoding: 8bit
Lines: 75
Message-ID: <5b7ad99d$0$673$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.27.136.177
X-Trace: 1534777757 unt-rea-a-01.news.neostrada.pl 673 83.27.136.177:49198
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:735424
[ ukryj 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
- Pendrive zdycha, czy coś jeszcze innego? Problem z plikami.
- Odkurzacz Smapp Dynamic - dawny Zelmer
- Nagra IV i zewnętrzny pilot
- Fejk muzyczny czy nie fejk
- Raspberry Pi 3 Model B+
- Kuchenka elektryczna
- test
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
Najnowsze wątki
- 2025-03-18 Tesla na złom
- 2025-03-18 Ziobrotura 3.0 będzie w prawie przesłuchać "świadka" Tuska bez adwokata w sprawach Sienkiewicza/Bodnara/...?
- 2025-03-18 Produkty ,,Made in Germany" wciąż na topie - art. na www.dw.com
- 2025-03-18 ulaskawienia
- 2025-03-18 Gdynia => Sales Executive / KAM <=
- 2025-03-18 42 MILIARDY ZŁOTYCH ZYSKU W ROK. DLACZEGO BANKI TYLE ZARABIAJĄ W POLSCE?
- 2025-03-17 Nie matura lecz chęć szczera ...
- 2025-03-17 Pendrive zdycha, czy coś jeszcze innego? Problem z plikami.
- 2025-03-17 Odkurzacz Smapp Dynamic - dawny Zelmer
- 2025-03-17 Nagra IV i zewnętrzny pilot
- 2025-03-17 Rzeszów => Spedytor Międzynarodowy <=
- 2025-03-17 Warszawa => Junior Account Manager <=
- 2025-03-17 Białystok => Gen AI Engineer <=
- 2025-03-17 Białystok => Generative AI Engineer <=
- 2025-03-17 Częstochowa => Backend Developer (Node + Java) <=