Portál AbcLinuxu, 4. května 2025 14:45
Ahoj, mám problém s mým Makefile. Nastavil jsem proměnou prostředí MAKEFLAGS="j5". Když zavolám make
vše se zkompiluje a slinkuje do binárky jak má. Pokud ale zavolám make clean all
aby se vše vyčistilo a rebuildnulo, paralelizace to pokazí. Začne se provádět clean, mezitím se přeskočí kompilace zdrojáků protože jejich .o soubory ještě clean nestihl smazat. Jakmile však dojde na linkování tak už není co linkovat protože clean dodělal svojí práci a všechny .o soubory smazal a make skončí chybou.
Jde nějak v Makefile vynutit aby se společně s clean nespouštělo nic dalšího?
.NOTPARALLEL :
a pak z něj volat další Makefile již s paralelním zpracováváním, kde by bylo vše kolem kompilace. Jen jsem myslel, jestli není nějaký elegantnější způsob...
make clean; make all
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.