Portál AbcLinuxu, 15. července 2025 01:43


Dotaz: makefile

10.6.2005 22:32 BlackShark | skóre: 15 | blog: windows
makefile
Přečteno: 168×
Odpovědět | Admin
Mám asi dost hlopý dotaz, ale zase bude stručný :-) Vytvořil jsem si soubor makefile pro svůj projekt a potřeboval bych, aby mi po překladu odstranil všechny soubory s příponou .o . Našel jsem si, že má fungovat toto :
clean:
 -tab- -rm -f *.o    
Jenže mi je to nesmaže. Respektive clean se vůbec neprovede. Leda když zadám make clean. Kde může být problém ? Dík
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

10.6.2005 22:36 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: makefile
Odpovědět | | Sbalit | Link | Blokovat | Admin
Spustíte-li make bez argumentu, vytvoří se první target. Pokud mermomocí po slinkování chcete odstranit objecty (předpokládám, že po překladu to udělat nechcete - bez ohledu na to, že to tvrdíte), tak ten příkaz pro smazání přidejte k příslušnému targetu. Ale pak mi není moc jasné, proč vlastně používáte makefile… :-)
10.6.2005 22:38 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: makefile
Jo aha, už jsem pochopil záměr. To je teda nápad, po sebenepatrnější změně všechno komplet překompilovávat.
10.6.2005 22:44 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: makefile
Což o to, to bych ještě pochopit dokázal. Jen nechápu, proč potom vlastně chce používat make a nenapíše si na to jednoduchý skript. Žiju totiž v přesvědčení, že make byl vymyšlen právě proto, aby se prováděly právě jen ty příkazy, které jsou potřeba…
10.6.2005 22:47 BlackShark | skóre: 15 | blog: windows
Rozbalit Rozbalit vše Re: makefile
Jde pouze o to, že programovat v Linuxu se v podstatě stále učím. Léta jsem programoval pod wokna a tady mi šlo jen o to, že jsem nechápal, proč to nefunguje, když je tam zapsáno, že se to má smazat. Tedy odpovědí na mou otázku byla první reakce... díky ...
10.6.2005 22:55 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: makefile
Jenom to nebyl zrovna nejlepší příklad :-)

Další možnost je dát ty dva targety do prerekvizit targetu, který se bude volat "zvenku", pak to celé vyřídí jeden proces make:
foo: real_foo clean

real_foo:
        ...

clean:
        rm -f *.o

.PHONY: foo real_foo clean
10.6.2005 22:36 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: makefile
Odpovědět | | Sbalit | Link | Blokovat | Admin
A kdy jindy by se to mělo provádět?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.