Pfade zu *.so Libs ausschliessen?

Dieses Thema: "Pfade zu *.so Libs ausschliessen?" im Forum "Linux OS" wurde erstellt von sticky bit, 17.06.2003.

  1. #1 sticky bit, 17.06.2003
    sticky bit

    sticky bit Grünschnabel

    Dabei seit:
    17.06.2003
    Beiträge:
    6
    Zustimmungen:
    0
    Ort:
    anywhere before EOF
    Also Situation ist folgende, ich will mir n Kreuz-Kompilier-Umgebung aufbauen, auf nem Pentium MMX ergo "i586-pc-linux-gnu" als Host-Triplett. So, nun hab ich folgendes Problem, dass ich die glibc für die Architekuren einbauen muss. Für "i586-pc-linux-gnu" ists ja logischer Weise schon da, für "i386-pc-linux-gnu" und "i486-pc-linux-gnu" ists auch kein Problem. Nur für "i686-pc-linux-gnu" gibts Probleme und das liegt an der dynamischen Verlinkung ein einiger Programme aus den binutils. Und zwar folgendes, bevor die "i686-pc-linux-gnu" glibc.so.6 (Link auf ./libc-2.3.2.so) in /usr/i686-pc-linux-gnu/lib/ mittels make $FLAGS install installiert ist läuft alles reibungslos, die Programme aus den binutils sind bis dahin gegen die /lib/libc.so.6 gelinkt
    Code:
    $ ldd /usr/i686-pc-linux-gnu/bin/as
    ...
    libc.so.6 => /lib/libc.so.6
    ...
    
    aber ab dann gegen die /usr/i686-pc-linux-gnu/lib/libc.so.6
    Code:
    $ ldd /usr/i686-pc-linux-gnu/bin/as
    ...
    libc.so.6 => /usr/i686-pc-linux-gnu/lib/libc.so.6
    ...
    
    Dann wird im Intallationsprozess wird aber /usr/i686-pc-linux-gnu/bin/ld (Ausgabe von ldd im Wesentlichen ist gleich) benötigt, was natürlich mit ner "illegal instruction" Meldung fehlschlägt, weil die Lib nun natürlich für ne unpassende Architektur ist.

    Ok, dacht ich mir, musst halt die /etc/ld.so.conf anpassen. Vorher war die allerdings leer, aber naja egal, ich habs trotzdem versucht
    Code:
    $ cat /etc/ld.so.conf
    /lib
    /usr/lib
    
    ein anschliessendes ldconfig
    Code:
    $ ldconfig -v
    /lib:
            ...
            libxyz.1.so -> libxyz.so.1.2.3
            ...
    /usr/lib:
            ...
            libabc.1.so -> libabc.so.1.2.3
            ...
    
    schien mir erfolgreich, aber Pustekuchen.
    Code:
    $ ldd /usr/i686-pc-linux-gnu/bin/as
    ...
    libc.so.6 => /usr/i686-pc-linux-gnu/lib/libc.so.6
    ...
    
    OK, dann hab ich noch $LD_LIBRARY_PATH sowie $LD_RUN_PATH auf "/lib:/usr/lib" gesetzt und nochmals ldconfig ausgeführt. Wieder kein Erfolg.

    Seltsamerweise, wenn ich die libc.so.6 in /usr/i686-pc-linux-gnu/lib/ lösche bzw umbenenne, dann gehts wieder auf die /lib/libc.so.6. Bringt nur nichts, weil dann bei nem erneuten Installationsversuch der glibc diese ja wieder installiert wird und das Ganze wieder von vorne anfängt, ausserdem werd ich noch mehr Libs so kreuzkompilieren müssen also sollten die "i686-pc-linux-gnu" binutils generell mit den "i586-pc-linux-gnu" bzw. native Libs gelinkt sein.

    Nur wie zum Teufel? Bin mit meinem Latein am letzten Ende angelangt. Wie kann ich es hinkriegn, dass /usr/i686-pc-linux-gnu/lib/libc.so.6 als Link auf /usr/i686-pc-linux-gnu/lib/libc-2.3.3.so existiert (Umlinken (SymLinks) bringt nichts, sonst überschreib ich mir die native Lib, der Effekt den das mit sich bringen würde ist unerwünscht... ;) ) aber /usr/i686-pc-linux-gnu/bin/as und andere gegen /lib/libc.so.6 gelinkt ausgeführt werden und nicht gegen /usr/i686-pc-linux-gnu/lib/libc.so.6. Das muss doch irgendwie konfigurierbar sein???
     
  2. Anzeige

    Schau dir mal diesen Ratgeber an. Viele Antworten inkl. passender Shell-Befehle!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. devilz

    devilz Pro*phet
    Administrator

    Dabei seit:
    01.05.2002
    Beiträge:
    12.244
    Zustimmungen:
    0
    Ort:
    Hessen
    Wäre sowas wie User-Mode-Linux nicht auch eine Lösung ?
     
  4. #3 sticky bit, 17.06.2003
    sticky bit

    sticky bit Grünschnabel

    Dabei seit:
    17.06.2003
    Beiträge:
    6
    Zustimmungen:
    0
    Ort:
    anywhere before EOF
    Hmm, das es sowas gibt wusste ich gar nicht. Höhrt sich ganz cool an, werd ich mir auf jeden Fall irgendwann mal ansehen. Im Moment hab ich allerdings glaub ich keine Zeit dazu mich da einzuarbeiten, ich versuche halt mein eigenes Linux zusammenzustellen und habe gehofft es gäbe ne relativ einfache Lösung von Anfang an eine Kreuz-Kompilier Umgebung einzubauen (ausser nen neuen Rechner mit nem i686, was mir aber u. U. später für mk86, ppc u. Ä. auch nichts helfen wird...), irgendwann wäre ich auch gerne fertig damit.
    Also so recht ist es nicht das was ich suche, aber trotzdem vielen Dank für den Hinweiss, da lässt sich sicher irgendwann mal irgendwas mit anfangen!
     
Thema:

Pfade zu *.so Libs ausschliessen?

Die Seite wird geladen...

Pfade zu *.so Libs ausschliessen? - Ähnliche Themen

  1. sed mit basename verknüpfen - oder anders Dateipfade in Dateien mit regex ersetzen?

    sed mit basename verknüpfen - oder anders Dateipfade in Dateien mit regex ersetzen?: Hallo, mein Ziel ist es ein Script zu schreiben, das eine CSS-Datei entgegen nimmt und in dieser Datei Pfade ersetzt. Ich möchte bspw....
  2. HowTo? : CentOS Kickstart / angepasste Installation mit mehren Installationspfaden

    HowTo? : CentOS Kickstart / angepasste Installation mit mehren Installationspfaden: Hallo, leider habe ich zu meinem Anliegen keine Ressourcen gefunden, auch nicht im Installationshandbuch von RedHat.. Ich möchte CentOS /...
  3. FTP-File Transfer nach Änderung des Schreibpfades auf anderen Server extrem langsam

    FTP-File Transfer nach Änderung des Schreibpfades auf anderen Server extrem langsam: Hallo Community, ich habe bei mir in der Firma ein Problem und hoffe von euch einen Tipp zu bekommen. Ich habe bisher keine (kaum) Erfahrung...
  4. Problem beim Einlesen von Pfaden mit Leerzeichen aus Textdatei

    Problem beim Einlesen von Pfaden mit Leerzeichen aus Textdatei: Wünsche einen schönen Sonntag :) Ich habe eine Textdatei angelegt und dort Datei- und Verzeichnispfade hineingeschrieben (eine Zeile = ein...
  5. Hilfepfade anpassen

    Hilfepfade anpassen: Hi, hab jetzt opensuse 11.0 installiert (war vielleicht 'n Fehler :-). Da stimmen einige Hilfepfade nicht, beispielsweise ist die Hilfe zum...