LINUX.ORG.RU

Make. Ненависть


0

2

Ну почему так

Makefile

PROGRAM = bot
OBJECTS = bot.o 


$(PROGRAM): $(OBJECTS)


clean :
		rm $(OBJECTS) $(PROGRAM)

dron@gnu:~/bit-bot$ make ; ls ;make clean
cc    -c -o bot.o bot.c
cc   bot.o   -o bot
bot  bot.c  bot.o  Makefile  message.h
rm bot.o  bot
dron@gnu:~/bit-bot$

Меняем имя софтины

PROGRAM = boton
OBJECTS = bot.o 


$(PROGRAM): $(OBJECTS)


clean :
		rm $(OBJECTS) $(PROGRAM)

ииии

dron@gnu:~/bit-bot$ make ; ls ;make clean
cc    -c -o bot.o bot.c
bot.c  bot.o  Makefile  message.h
rm bot.o  boton
rm: невозможно удалить «boton»: Нет такого файла или каталога
make: *** [clean] Ошибка 1
dron@gnu:~/bit-bot$

Куда делося

 cc   bot.o   -o boton
?

Перемещено mono из talks

★★★★★

В первом случае работает неявное правило линковки bot из bot.o, во втором случае правило нужно писать самому, ибо названия отличаются.

Deleted
()

echo -5 >> TS; topic=$PWD; cd ..; mv $topic dev/;

jeuta ★★★★
()

Куда делося cc bot.o -o boton ?

там и остался. Это дефолтное правило.

emulek
()
Ответ на: комментарий от I-Love-Microsoft

Привет, я опять похерил пароль. Сейчас восстановлю.

LongLiveUbuntu ★★★★★
()

Про неявные правила тебе уже сказали; кроме того, последнюю команду надо писать "-rm $(OBJECTS) $(PROGRAM)".

Miguel ★★★★★
()
Ответ на: комментарий от Harald

это не повод использовать их в новых проектах

dt1 ★★
()

Нормальной системы сборки не существует. Все кривые. Более или менее вариант: cmake->ninja.

AoD314
()
Ответ на: комментарий от LongLiveUbuntu

Шухер, илитка в треде!

Огласите список тулз, написанный вами, и используемый более чем полутора человеками.

false ★★★★★
()
Ответ на: комментарий от false

cat .config/upstart/cpulimit-mediascanner.conf

start on started mediascanner
stop on runlevel [016]
exec cpulimit --path=/usr/bin/mediascanner-service --limit=10
respawn

Чтобы индексирование не жрало процессор.

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

Эээ, так списка нет? Тогда своим постом выше ты и себя зацепил.

Мне на работе приходится юзать эти автотулзы иногда (зачем - отдельная история), так-то ещё ладно, но libtool - верх маразма.

false ★★★★★
()
Ответ на: комментарий от bhfq

Я его не разрабатываю.

Конфиг апстарта - это костыль для энергосбережения за счет лимитирования процессорного времени для сабжа.

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

отмазка потребляди :) «Кроме того, ты еще и демагог.» (с)

slackwarrior ★★★★★
()
Ответ на: комментарий от emulek

Да на этапе изучения уже кажется, что это говнище, и чем дальше, тем больше в этом убеждаешься. Для легаси ещё ладно, деваться некуда, не переделывать же, но для проектов с нуля ну его нахрен.

false ★★★★★
()
Ответ на: комментарий от false

говнище, но свою задачу выполняет. Мне хватает.

но для проектов с нуля ну его нахрен.

что дают альтернативы?

emulek
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.