Hallo, On Thu, 19 Jun 2003, Manfred Tremmel wrote:
Am Donnerstag, 19. Juni 2003 04:04 schrieb David Haller:
Naja, im Prinzip ist das einfach. Ich backe mir praktisch alles selbst als RPM (Basissystem: SuSE 6.2/glibc-2.1.3, mir bleibt also kaum was anderes uebrig ;), und so finden sich in recht vielen meiner .spec-Dateien Zeilen wie diese:
Ich denk mal, wenn Du alles mit make install reingeschaufelt hättest, könntest Du heute eine SuSE 6.2 auch nicht mehr brauchen. Eine Distri über so lange Zeit zu nutzen, sicher und halbwegs aktuell zu halten, da gehört schon jede Menge Disziplin dazu, Respekt.
Och, weder noch eigentlich. Sicher ist sie nicht (von der Software her), mein sendmail 8.9.3 und apache 1.3.6 haben definitiv bekannte Exploits -- allerdings ist es nicht moeglich, diese SW von aussen her anzusprechen und wenn ich online bin laeuft der Apache sowieso nicht. Und aktuell? Naja, ein paar Teile sind aktualisiert, vieles ist aber "original" ;)
==== %prep %setup -q
cp configure configure.orig sed 's/\(FOO.*\)x\.y\.z/\1x.y.n/' < configure.orig > configure ====
Und danach die Zeilen:
libtoolize --force aclocal autoconf
reinstellen ;-) (Bitte nicht zu Hause nachmachen, wenn die Auswirkungen nicht bekannt sind)
Wozu? Es wird ja nicht das configure.in, sondern das configure script geaendert, nach einem autoconf waere die Aenderung wieder weg!
Kurz: es wird einfach die Angabe der Mindestversion von libfoo manipuliert, die Schwierigkeit ergibt sich nur daraus, diese Aenderung per patch oder per sed o.ae. aus dem .spec heraus vorzunehmen. Wuerde man das per Hand aendern waere's trivial -- fuer sed muss man eben ein eindeutiges Muster samt Ersetzung finden ;)
Patch basteln ist auch nicht schwierig, configure Script kopieren z.B. als configure.orig, dann das Script abändern, mit 'diff -u configure.orig configure > configure.patch' nen Patch erstellen und ins Specfile einbauen.
Jup. Mach ich meistens auch, wenn mehrere Aenderungen noetig sind.
Ack, aber meist ist das gar nicht mal so schwer, siehe den letzten Absatz.
Im Prinzip ist es nicht schwierig, aber die Folgen abzuschätzen, eventuell Changlogs der Lib rückverfolgen, abschätzen, ob entstehende Compilefehler aus diesen Änderungen herrühren und wie man damit umgeht usw.. Man mag es ja gar nicht glauben, aber nicht jedes Source-RPM compiliert auch wirklich problemlos auf jedem Rechner.
ACK. Ich sag mir halt immer: "schau'n wer mal, ob's durchlaeuft" ;)
Ein wenig Verstaendnis von autoconf und rpm sind natuerlich noetig.
Kann nie schaden :-)
Wichtig war mir eigentlich die Aussage: $PAKET will libfoo-1.2.12, ich habe hier 1.2.11 (oder .9 oder so)... Und in diesen Faellen ist eine Anpassung eben wie oben angedeutet meist doch eher einfach und in 1min (grep plus ein test-sed-lauf plus diff) erledigt. Im Vergleich zum aktualisieren von libfoo sehr oft durchaus lohnend. Falls Fehlermeldungen auftauchen, muss man halt evtl. dann doch aktualisieren...
Aber genau dieses "evtl." dürfte viele weniger erfahrene User vor Probleme stellen.
Jo mei, was waere denn die Alternative? Gleich $lib zu aktualisieren? Und sich evtl. damit weitere Probleme einzuhandeln? Ne, also da mach ich lieber den o.g. Versuch und kann mir, wenn's klappt, einen Haufen Aerger ersparen.
Bei, sagen wir GTK1/GTK2 oder QT1/QT2/QT3 kann man es z.B. wohl vergessen, der Aufwand waere zu gross, in anderen Faellen stoert eben nur eine bloede zu hohe Version im configure... Diese testhalber mal zu manipulieren hat sich fuer mich bisher fast immer gelohnt.
Gerade die aktuellen Probleme mit QT 3.1.1 Update auf 3.1.2 sind ein gutes Beispiel, dass selbst kleine Versionsschritte böse Probleme bereiten können.
*hehe* Gutes Beispiel. Schreit jetzt $app nach qt 3.1.2 lohnt es sich IMO, zu versuchen, ob's nicht auch mit der 3.1.1 kompiliert und laeuft.
Nochmal, zu Verdeutlichung, diese Vorgehensweise ist natuerlich nicht DAU-kompatibel! Aber DAUs sollten IMO ja sowieso nicht selber
Genaugenommen kann es DAUs (also Mehrzahl) gar nicht geben ;-)
Stimmt. Aber die werden ja gezuechtet, es gibt staendig einen neuen DAU, ergo hat man den aktuellen DAU und die nicht ganz aktuellen...
kompilieren, und fuer alle anderen kann's ein (lohnender) Anlass sein, sich mal ein klein wenig naeher mit autoconf/make usw. zu beschaeftigen ;))
Muß natürlich auch jeder wissen, wie viel Aufwand ein Paket einem an Arbeit oder Kosten (für ne neue Distri) wert ist.
ACK. [..]
Naja, ausserdem juckt mich die Herausforderung ;-)
*g* -dnh --
....Ommmmmm ....Ommmmmm .....Ommmmmm Pendel ----Pendel-----Pendel------ Mensch Axel: Sonst machst Du das doch mit der Glaskugel. Ist die schon wieder in der Spülmaschine? [Axel Lindlau und Volker Kroll in suse-linux]