Re: Q: Update

From: Andreas Klemm <andreas(at)klemm.gtn.com>
Date: Sun, 18 Apr 1999 17:52:03 +0200

On Sun, Apr 18, 1999 at 03:36:03PM +0200, Marc van Woerkom wrote:
> > - BACKUP !
> Richtig, da war doch was.. ;)

Ist immer gut, wenn man einen Rettungsanker hat ;-)

> > - /usr/include updaten
> > csh# cd /usr/src && make -DCLOBBER includes
>
> Das hört sich ja so an, als ob beim Bau des world target die Header aus
> /usr/include verwendet werden und nicht die ggf. neueren aus /usr/src/...
> Stimmt das?

Kann ich nicht genau bestätigen. Dazu müßte ich ein world.log
analysieren. Dazu habe ich weder Zeit noch Lust. Ist meinerseits
eigentlich mehr ein "Ritual" bei größeren Release Sprüngen,
vielleicht verhindert es hier und da wirklich Übersetzungsprobleme.

> Und wofür genau ist das CLOBBER Symbol gut?

wofür hast Du grep auf der Platte ? Kuck doch nach.

root{105} /usr/src grep CLOBBER Makefile*
Makefile.inc1:# -DCLOBBER will remove /usr/include
Makefile.inc1:.if defined(CLOBBER)

> Ist das evt. eine bequeme Möglichkeit zu putzen?

Nein, vermutlich nicht so wie Du Dir das vorstellst.

Es removed alle alten header files und erstellt unter Verwendung
von mtree in /usr/include die benötigte Directory Struktur,
damit "make includes" sauber durchläuft.

includes:
.if defined(CLOBBER)
        rm -rf ${DESTDIR}/usr/include/*
        mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \
                -p ${DESTDIR}/usr/include
.endif
        cd ${.CURDIR}/include; ${MAKE} -B all install
        cd ${.CURDIR}/gnu/include; ${MAKE} install
        cd ${.CURDIR}/gnu/lib/libmp; ${MAKE} beforeinstall
        cd ${.CURDIR}/gnu/lib/libobjc; ${MAKE} beforeinstall
        cd ${.CURDIR}/gnu/lib/libreadline; ${MAKE} beforeinstall
        [ ... etc ... ]

> Sowas suche ich noch.
> Ich war nämlich zu unvorsichtig letze Woche, als ich von Hand alle
> älteren Libs und man pages aus den Systemverzeichnissen gelöscht hatte:

Hmm, das ist eigentlich ziemlich unnötig und unvorsichtig.
Die alten libraries könnten u.U. noch von Programmen benötigt
werden ... Erstes Ziel ist, das OS und den kernel zu updaten.
Ein paar ältere libs und binaries stört dabei doch überhaupt nicht.

Außerdem können dann erstmal alle binaries unter /usr/local friedlich
weiterlaufen.

> Da habe ich wohl auch ein paar a.out libs gelöscht, die der FreeBSD
> Navigator 4.5 benötigt - ld.so? libXt.6.0?
> Kann ich nicht genau sagen, mittlerweile schmiert mir ldd mit einer floating
> point exception beim Testen des netscape excutables ab :( - und die nicht
> mehr von einem make world neu erzeugt werden.

Das klann daran liegen, daß das Nescape binary noch ein a.out
binary ist. Dann ist es empfehlenwert, die Linux emulation
zu konfigurieren und einfach den Linux Netscape zu nehmen ...

Dann hast Du alle erforderlichen libs unter compat....

> Seitdem läuft hier der Linux Navigator.. :|

Den habe ich hier auch laufen ... läuft doch ganz o.k. ?!
Bis es ein native FreeBSD a.out binary gab mußte man schliesslich
auch zwischen bsdi und Linux binaries wählen.

> Es gibt auch schon mal böse Überraschungen, die halt vorkommen,
> wenn die Entwickler einen Sprung machen.

Nun ja ... aber die kann man doch locker in den Griff bekommen.
Sind doch meistens nur Kleinigkeiten ...

Selbst wenn's hier oder da mal hakt ist es doch immer noch besser,
als alles plattzumachen und neu zu installieren.
Danke, die Zeiten sind mir noch bestens aus Slackware's Zeiten
bekannt.

> Damit ich mir neue sourcen saugen kann, bin ich selbstredend auf ein
> laufendes i4b angewiesen.

Das macht man üblicherweise vor dem Upgrade und dann hat man die
doch ...

> Da liegt der Teufel schon mal im Detail, so ändern sich mal
> Konfigurationsmechanismen, oder die Devicenamen, ohne dass ich es sofort
> bemerkt habe, dass hier der Fehler liegt.

Das ist halt so ..., vor allem wenn man auf ein Entwickler OS
umsteigt :-)

> Oder aktuell:
>
> Es lässt sich derzeit kein -CURRENT Kernel mit i4b Support bauen:

Na ja ... wenn Du meinst, ein Entwicklersystem betreiben zu
müssen, dann trag es bitte mit Fassung !

> root(at)oranje# make
> cc -c -O -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes\
> -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual\
> -fformat-extensions -ansi -nostdinc -I- -I. -I../.. -I../../../include\
> -DKERNEL -DVM_STACK -include opt_global.h -elf ../../i4b/layer1/i4b_isic_pnp.c
> ../../i4b/layer1/i4b_isic_pnp.c: In function `i4b_pnp_attach':
> ../../i4b/layer1/i4b_isic_pnp.c:223: warning: implicit declaration of function `find_isadev'
> ../../i4b/layer1/i4b_isic_pnp.c:223: `isa_devtab_net' undeclared (first use in this function)
> ../../i4b/layer1/i4b_isic_pnp.c:223: (Each undeclared identifier is reported only once
> ../../i4b/layer1/i4b_isic_pnp.c:223: for each function it appears in.)
> ../../i4b/layer1/i4b_isic_pnp.c:223: warning: assignment makes pointer from integer without a cast
>
> (Daher immer mitloggen! Sonst kann man nicht maulen^H^H^H^H^H^Hfixen :)

Was denn nun .... maulen oder fixen ... Deine Äußerungen lassen
nicht unbedingt darauf schliessen, daß Du auf fixen aus bist.
Oder habe ich das was falsch verstanden....

> Und hier zeigt sich schon ein Nachteil von cvsup.

Erhelle mich ...

> Es zieht mir nämlich nur den aktuellen Stand der sourcen. Hier bräuchte
> ich aber die Möglichkeit auch die älteren revisions der source files zu
> regenerieren. Ich fürchte sowas geht nicht mit cvsup, da werde ich wohl rein
> mit cvs arbeiten müssen - oder?

Quatsch mit Soße, das ist doch gerade das Geniale ...

Du kannst Dir damit sowohl ein CVS repository mirrorn als auch
einfach einen bestimmten Source Stand.

Ich habe irgendwann mal ein CVS Repository von CD in eine
directory hierarchie geschrieben und seitdem mirror ich
täglich oder wöchentlich einige Minuten /usr/src und /usr/ports
(auch gnats, doc und www). Geht gut über ISDN....

Und wenn Dir das zu aufwendig ist ... was spricht gegen
        cp -rp /usr/src /usr/src.224 oder so ...

Dann hast Du Deine alten sources doch auch gesichert ...

> Mit anderen Worten, da ist die ISA Treiberarchitektur geändert worden,
> statt isa_devtab_net gibt es wohl nur noch isa_devtab, und man hat den
> i4b Treiber nicht mitgeändert - ich schätze der Autor der Änderung
> benutzt kein ISDN.. :)

Wenn Du Dir Mailinglisten liest, dann hast Du vielleicht auch schon
einen Fix dafür bemerkt ...

Wie ich Deinen Äußerungen und Wertungen entnehme, ich glaube -current
ist nichts für Dich. Sorry.

Wenn Du von Nachteilen von cvsup sprichst, ohne es richtig zu
kennen und davon sprichst, daß Du auf ein laufendes i4b angewiesen
bist ... dann nimm besser STABLE und lerne erstmal die Tools kennen.

Wenn Du Dich dann gut auskennst, so daß Du Dich mit gegebenen Mitteln
selbst aus dem Sumpf holen kannst, dann installier -current.

Ansonsten verstehe ich ehrlich nicht, was Du sagen willst, außer
daß Du selbst dokumentierst, daß -current Dir keinerlei Vorteile
bietet ...

        Andreas ///

-- 
Andreas Klemm                               http://www.FreeBSD.ORG/~andreas
                                  http://www.freebsd.org/~fsmp/SMP/SMP.html
                                powered by Symmetric MultiProcessor FreeBSD
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Sun 18 Apr 1999 - 17:00:21 CEST

search this site