Вопрос по makefile'у

89147510881

кусочек оного
.trf.o:
trf @nf $<
g77 -c -o $@ `basename $< .trf` *.f $%
rm `basename $< .trf`.f
rm *.lst
что значит `basename $< .trf` и trf @nf никто не подскажет?

Marinavo_0507

man basename
что-такое trf не знаю, может и про него есть man?

89147510881

ок
спасибо.

89147510881

wdburn.o: wdburn.trf define.inc global.inc
wisabi.o: wisabi.trf define.inc global.inc
wmtime.o: wmtime.trf define.inc global.inc
wrt3r.o: wrt3r.trf define.inc
wrti.o: wrti.trf define.inc
wrtr.o: wrtr.trf define.inc
zero2.o: zero2.trf
global.inc: glotest.inc function.inc example.inc touch global.inc
именно через пробелы, никаких табов

89147510881

типа чо это?

evgen5555

Это таргеты и файлы для их получения

a10063

типа зависимости файлов
а вместо $< подставляется имя оного!

89147510881

а команд никаких нет же...

a10063

команды ты выше писал, они от "расширения" зависят

89147510881

тьфу ты
точно
пора спать : )

slonishka

up

89147510881

я выспался, но ума не прибавилось
g77 -c -o $@ `basename $< .trf` *.f $%
здесь : g77 - фортрановксий компилятор - компилит в итоговый файл каждой своей цели ($@) файл с расширением трф, удаляя это расширение и приписывая ему новое .f ?
$% типа выбирает каждый элемент "архива" $@
тока, как я понимаю, $@ не есть "архив".
это ставит меня в тупик.

89147510881

MMMMMMMMMMMM

a10063

видимо, трф - все-таки архив...

ppplva

Не тупим, читаем доки по make.
$@ - левая часть правила
$< - первый prerequisite

89147510881

да знаю я это
читал

a10063

и что?
как понять выражение?

a10063

смотри-ка
у тебя мейкфайл и то, что запостил, различаются!

89147510881

чем?

a10063



.trf.o:
trf @nf $<
g77 -c -o $@ `basename $< .trf`.f $%
rm `basename $< .trf`.f
# rm *.lst


звездочки перед f нет! и пробела!
Оставить комментарий
Имя или ник:
Комментарий: