Also habe ich viel mit verschiedenen Suchbegriffen gegoogelt, aber nichts brauchbares gefunden, nur das, was lddich verwenden muss otool -L, um die verwendeten Bibliotheken eines Programms zu sehen.

Ich habe versucht, bash in ~ / chroot / bin zu kopieren und habe das oben genannte Tool verwendet, um die Abhängigkeiten zu finden und auch dort zu speichern (naja, natürlich habe ich es so aussehen lassen, als wäre es der echte Pfad. / Usr wurde zu ~ / chroot / usr etc ).

Aber wenn ich versuche sudo chroot ~/chroot, es zu benutzen , sagt es mir das there is no file or directorymeiner Muschel. Wat.

Ich muss in eine "save" -Umgebung chrooten, um ein Paket zu kompilieren, das auch in einer chrooten Umgebung ausgeführt wird. Konkret kann ich phpstatisch nicht kompilieren:

Kevins-MacBook-Air:System Ingwie$ otool -L ./bin/php
./bin/php:
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 1.0.0)
    /usr/lib/libedit.3.dylib (compatibility version 2.0.0, current version 3.0.0)
    /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
    /usr/local/lib/libmcrypt.4.dylib (compatibility version 9.0.0, current version 9.8.0)
    /usr/local/lib/libltdl.3.dylib (compatibility version 5.0.0, current version 5.0.0)
    /usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
    /usr/local/lib/libpng16.16.dylib (compatibility version 20.0.0, current version 20.0.0)
    /usr/local/lib/libcurl.4.dylib (compatibility version 8.0.0, current version 8.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
    /usr/lib/libxml2.2.dylib (compatibility version 10.0.0, current version 10.8.0)
    /usr/lib/libssl.0.9.8.dylib (compatibility version 0.9.8, current version 47.1.0)
    /usr/lib/libcrypto.0.9.8.dylib (compatibility version 0.9.8, current version 47.1.0)
    /System/Library/Frameworks/LDAP.framework/Versions/A/LDAP (compatibility version 1.0.0, current version 2.4.0)

Das Ändern makefilevon -export-dynamiczu -all-staticund solche Tricks haben nichts gebracht. Es wird immer noch so kompiliert. Um das herauszufinden, möchte ich chroot. Das Paket verwendet ein Entrence-Skript, um die Chroot zu reproduzieren, und wird von dort aus ausgeführt.

Ingwie Phoenix
quelle