bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

make-�berraschung(Problem?)


From: V. Kaufman
Subject: make-Überraschung(Problem?)
Date: Mon, 5 Mar 2001 22:56:52 +0100

Dies ist eine Bitte an weise Leute, mir zu helfen, ein Phänomen(Problem?) betr.
`make' (Linux 6.4; Revision 2.2.15; make 3.78.1) zu erklären

Der folgende Text ist auch in Attachment "makefile" zu finden.

#
# Stark vereinfachte version des Problem - Makefile
# Es wird vorausgesetzt dass eine Datei mit dem Namen <src> existiert(z.B. mit 
`make touch')


.INTERMEDIATE: depp

default: main5

main%: depp
        echo foo > $@

depp: src;



# Meine Absicht war (..aus welchen Gründen auch immer..) ,
# ~~~~~~~~~~~~~~~~
# dass <main5> nur dann remake't wird wenn <src> sich geändert hat und
# zwar unabhängig davon ob <depp> existiert und/oder sich geändert hat.
# (`depp: src' stand übrigens in einer anderen Datei und wurde include't)
#
# Ich bekam
# ~~~~~~~~~
# make: *** No rule to make target `main5', needed by `default'.  Stop.
# Der Ausdruck von `make -d' steht in `debug1.txt'; make-version: 3.78.1 (Linux 
2.2.15(SuSE-Linux-6.4))
#
# Erstaunlicherweise
# ~~~~~~~~~~~~~~~~~~
# hat dieselbe Makefile - Datei bei mir zu Hause 
(SuSE-Linux-6.2(Revision2.2.10; make 3.77)) prima
# funktioniert(wie ich es wollte)!
#
# Folgendes wurde noch(u.a.) unternommen:
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# 1)
# Ich habe dann festgestellt dass `make' nur nach impliziten Regeln für <depp> 
sucht und andere nicht sieht.
# Mit dem Einfügen der Zeile(z.B.):
#
##dep% : src;
#
# habe ich fast den gewünschten Effekt erreicht: <main5> wurde remake't sobald 
sich <src> änderte, ABER
# es wurde auch remake't bei Änderung von <depp>!
#
# 2)
#
# Mit alles oben rauskommentiert und eingefügt:
#
##.INTERMEDIATE: depp
##
##default: main5
##
##main5: depp
##      echo foo > $@
##
##depp: src;
##
#
# gab es auch etwas was ich nicht verstehe (aus der Dokumentation glaubte ich 
diese Materie zu verstehen
# und bei mir zu Hause(s. oben) funktionierte alles auch nach meinen 
Vorstellungen) und zwar:
# Änderungen an der Datei <depp> (touch depp) lösen erneute Kompilation aus!
#
# Bitte an Leser
# ~~~~~~~~~~~~~~
#
# Leute, ich habe mir mit diesen Problemen(?) etliche Stunden um die Ohren 
geschlagen und es würde mich
# wirklich interessieren was los war (wenn auch "RTFM").
#
# Danke für Aufmerksamkeit
# Mfg, Viktor (address@hidden)
#


clean:
        rm -f depp; rm -f main5
touch:
        touch src

Attachment: makefile
Description: Binary data

Attachment: debug1.txt
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]