Superuser

Autor Thema: Compilieren von atk / glib 2.2.2  (Gelesen 6423 mal)

Lordy

  • Gast
Re: Compilieren von atk / glib 2.2.2
« Antwort #15 am: 27. Juni 2003, 02:07:14 »
Hey,

also gnome-config ist eigendlich nur bei gnome-1.4/gtk-1.4. Vielleicht ist es das.

Was sagt den die config.log/configure.log?


Gruesse,
chris

sonnenblen.de - Das unabhängige Sun User Forum

Re: Compilieren von atk / glib 2.2.2
« Antwort #15 am: 27. Juni 2003, 02:07:14 »

Offline vab

  • Global Moderator
  • Sobl Guru
  • *****
  • Beiträge: 514
Re: Compilieren von atk / glib 2.2.2
« Antwort #16 am: 27. Juni 2003, 02:29:04 »
Hi Lordy!

Einspruch:  LD_LIBRARY_PATH ist böse.  crle ist aber auch böse. Beides sollte man vermeiden wo immer es geht.  Viiiel besser ist es, sich ein DIrectory auszusuchen, in das man immer seine shlibs reinstopft.  Bei mir ist es z.B /opt/local/lib, mit einem symlink von /usr/local nach /opt/local.

Und dann muß man nur noch bei jedem, aber auch jedem Link-Vorgang ein -R /opt/local/lib angeben.  Wenn man dann Binaries in Packages mit Depends auf Library-Packages, die ihrerseits in /opt/local/lib liegen, verteilt, geht es immer.

LD_LIBRARY_PATH gibt irgendwann Chaos, crle vergißt man, oder es wird totgepatcht, wenn man grad im Urlaub ist usw usw.


Gruß -- Volker
Diese Nachricht enthält ausschließlich meine persönliche private Meinung....

Lordy

  • Gast
Re: Compilieren von atk / glib 2.2.2
« Antwort #17 am: 27. Juni 2003, 02:54:16 »
Ok, wir bewegen uns jetzt zwar sehr stark auf den Offtopic rand, aber egal.

Ich finde Crle nicht boese, begruendung: Crle ist System weit, nicht wie LD_L. bei der wenn einmal nicht gesetzt nichts mehr gehen.
Tot patchen hab ich noch nicht geschaft, und vergessen auch nicht.

Alles in einen Ordner zu stopfen und den rest verlinken, das ist ein ansatz an den ich noch nicht gedacht habe. Aber ich werde ihn sicher nicht umsetzen, warum? /usr/local/ ist bei mir der Ordner fuer , meisten selbst gebaute, software. Da haeuft sich schnell muehl an, nicht alles was ich installiere wird als pkg gebaut, usw. So loesch ich bei nenn grossen Update einfach mal alle /usr/local pkg, was in ordner uebrigbleibt wird zur kenntnis genommen, dann aber auch vernichtet und die neuen Pkgs werden eingespielt.

Was fuer mich noch gegen einen zentrallen Ordner spricht sind viele Sun Pkgs. Hier ist zB gnome 2.0 wieder in /usr, gewisse andere Freeware aber wieder /opt/sfw... Wenn ich da wirklich alles in einen Ordner haben will habe ich einen wirklich grossen aufwand wenn im vergleich mit der crle Loesung.


Gruesse,
chris

SmellyCat

  • Gast
Re: Compilieren von atk / glib 2.2.2
« Antwort #18 am: 27. Juni 2003, 12:32:14 »

Zitat

also gnome-config ist eigendlich nur bei gnome-1.4/gtk-1.4. Vielleicht ist es das.


ist gtk, kein Gnome - ich habe nur gtk und kein Gnome installiert und es rentn dennoch.

gtk bzw bei configure richtig gelinkt?

Offline vab

  • Global Moderator
  • Sobl Guru
  • *****
  • Beiträge: 514
Re: Compilieren von atk / glib 2.2.2
« Antwort #19 am: 27. Juni 2003, 13:41:06 »

Zitat

Ok, wir bewegen uns jetzt zwar sehr stark auf den Offtopic rand, aber egal.


Glaub nicht, daß das hier so sehr stört, aber wir können ja schlimmstenfalls ein neues Thema aufmachen...

Zitat

ch finde Crle nicht boese, begruendung: Crle ist System weit, nicht wie LD_L. bei der wenn einmal nicht gesetzt nichts mehr gehen.
Tot patchen hab ich noch nicht geschaft, und vergessen auch nicht.


Wenn Du allein an einem System arbeitest, ist das ja auch OK. Ich baue Pakete, die ggf. auch standalone laufen müssen.  Mein Job ist es, Installationsverfahren zu entwickeln, die für beliebig viele Systeme automatisch lauffähige Anwendungen installieren. Da beißen solche Änderungen wie clre schon ab und zu.

Und eine Anwendung, die einen gesetzten LD_LIBRARY_PATH zum Funktionieren braucht, fällt unter meine Definition von "kaputt".

Zitat

Alles in einen Ordner zu stopfen und den rest verlinken, das ist ein ansatz an den ich noch nicht gedacht habe. Aber ich werde ihn sicher nicht umsetzen, warum? /usr/local/ ist bei mir der Ordner fuer , meisten selbst gebaute, software. Da haeuft sich schnell muehl an, nicht alles was ich installiere wird als pkg gebaut, usw. So loesch ich bei nenn grossen Update einfach mal alle /usr/local pkg, was in ordner uebrigbleibt wird zur kenntnis genommen, dann aber auch vernichtet und die neuen Pkgs werden eingespielt.


Alles stopf ich da nicht rein, sondern nur die Sachen, die ich selber baue.  Ja, das sind alles Pakete.

Zitat

Was fuer mich noch gegen einen zentrallen Ordner spricht sind viele Sun Pkgs. Hier ist zB gnome 2.0 wieder in /usr, gewisse andere Freeware aber wieder /opt/sfw... Wenn ich da wirklich alles in einen Ordner haben will habe ich einen wirklich grossen aufwand wenn im vergleich mit der crle Loesung.


Ich glaube, da hast Du mich mist-verstanden.  :-)  Es geht um die ld-Option -R.  Diese bewirkt, daß das binary, das man damit baut, den Pfad zu seinen shared libraries eingebaut hat (wie ein hartkodierter fester LD_LIBRARY_PATH).  Das muß ich nur für meine Sachen machen.

Sun macht das "richtig".  Beispiel:  ldd -s /opt/sfw/bin/gimp liefert:

  find object=libgtk-1.2.so.0; required by gimp
   search path=/usr/lib:/opt/sfw/lib:/usr/openwin/lib  (RPATH from file gimp)
   ....

Deshalb brauch ich kein /opt/sfw/lib in meinem LD_LIBRARY_PATH, und auch kein symlink.   Wenn ich nun selber ein Programm baue, das eine Library aus /opt/sfw/lib verwendet, gebe ich einfach ld -R /opt/sfw/lib:/opt/local/lib an.  Schon geht es.  Kein globales crle.

Wenn ich das dann paketiere, muß ich natürlich ein depend-File mit einem Verweis auf das SFW...-Paket anlegen, in dem die shlib drin ist.

Gruß -- Volker
Diese Nachricht enthält ausschließlich meine persönliche private Meinung....