Das gab Apple am 28. Juni 2017 bekannt
macOS High Sierra wird die letzte macOS-Version sein, die 32-Bit-Apps ohne Kompromisse unterstützt.
Wie kann ich herausfinden, welche Apps auf meinem Mac 32-Bit sind, damit ich sehen kann, ob ich sie aktualisieren muss?
Eine Möglichkeit, herauszufinden, welche 32-Bit-Apps Sie noch verwenden, ist die Verwendung der Option „Systeminformationen“ unter „Über diesen Mac“. Die genauen Schritte unterscheiden sich je nach der Version von macOS, die Sie ausführen, aber unten sind die allgemeinen Schritte, die Sie je nach Ihren Umständen befolgen können sollten:
64-Bit (Intel)
Klicken Sie auf diese Spaltenüberschrift, um Apps danach zu sortieren, ob sie 64-Bit sind oder nicht (dh für jede App wird entweder ein Ja oder ein Nein aufgeführt).Sehen Sie sich das Bild unten als Beispiel an:
HINWEIS: Im obigen Bild habe ich die letzte Spalte absichtlich nicht sortiert, damit Sie Einträge sehen können, für die sowohl ein Ja als auch ein Nein aufgeführt sind. Im obigen Beispiel sehen Sie also, dass iMovie v10.1.6 eine 64-Bit-App ist, während iMovie 9.0.9 nicht 64-Bit ist.
Bearbeiten - Wenn die obigen Schritte zu einem Fehler führen
Ich habe Berichte gesehen, dass eine kleine Anzahl von Benutzern die Fehlermeldung „Das Plug-in hat beim Sammeln dieser Informationen nicht schnell genug geantwortet“ erhalten, während sie darauf warten, dass die Liste gefüllt wird.
Beenden Sie in diesem Fall die Systeminformations-App (oder die Systemprofiler-App in älteren Versionen von macOS) und starten Sie erneut, aber überspringen Sie diesmal die Schritte 1 bis 4 und gehen Sie direkt zu Ihrem Ordner „Programme/Dienstprogramme“ und öffnen Sie die Systeminformations-App (oder System Profiler-App) direkt von dort. Befolgen Sie nach dem Öffnen die Schritte 5 bis 8 oben.
Klicken Sie im Finder auf cmdF, um ein Suchfenster zu erhalten.
Klicken Sie auf die Schaltfläche + und fügen Sie ein zweites Kriterium „ Ausführbare Architekturen “ „ Ist nicht “ „ x86_64 “ hinzu.
und Sie erhalten eine Liste aller nur i386-Apps (dh 32-Bit-Apps).
Im Terminal geht das mit:
mdfind "(kMDItemExecutableArchitectures == 'i386') && (kMDItemExecutableArchitectures != 'x86_64')"
~/Library/Application Support
findet, wie z. B. Steam-Spiele. Die andere Lösung tut es. Weißt du, ob es eine Möglichkeit gibt, die Suche dahingehend zu ändern?Die anderen Antworten werden meines Wissens nach 32-Bit-MacOS-Apps (und möglicherweise einige 32-Bit-Binärdateien) im Metadatenindex auflisten. Wenn Sie jede nur 32-Bit-ausführbare Binärdatei auf Ihrem System auflisten möchten, versuchen Sie es mit diesem Einzeiler:
find / -type f -perm +111 -exec file -p {} \; -exec head -c 1 /dev/zero \; | xargs -0 -n 1 sh -c 'echo "$@" | head -n 1' -- | grep -v x86_64 | grep -E Mach-O.+i386
Wenn Sie GNU findutils installiert haben, kann dies wahrscheinlich erheblich vereinfacht werden. Ein Teil der Komplexität besteht hier darin, die Einschränkungen der in macOS enthaltenen BSD-Findutils zu überwinden.
Dieser einzeilige Terminal-Befehl sammelt eine Liste von Apps in einer Textdatei auf Ihrem Desktop. Es erfasst die 6 Zeilen vor und 2 Zeilen nach jedem Vorkommen von „(Intel): No“ in der Abfrage. Es gräbt sich jedoch nicht in die 32-Bit-unterstützenden Binärdateien oder Bibliotheken für bereits kompilierte 64-Bit-Apps ein. Diese Liste ist viel umfangreicher und ich kann keine Ressource finden, die eine tiefere Ebene der Besorgnis anspricht, wenn es sich überhaupt um ein Problem handelt.
system_profiler SPApplicationsDataType | grep -B 6 -A 2 "(Intel): No" > ~/Desktop/32BitAppList.txt
Wenn Sie nur eine einzelne Anwendung prüfen müssen:
file myapplication
Zum Beispiel mein Raytracer rt
:
==> file rt
rt: Mach-O 64-bit executable x86_64
==>
Der file
Befehl sieht sich im Grunde viele Arten von Dateien an und versucht, sie zu identifizieren. Bei ausführbaren OSX-Dateien werden Sie fast immer eine oder mehrere davon sehen: i386, x86_64 und ppc, die jeweils 32-Bit-Intel/Amd-Architekturen, 64-Bit-Intel/Amd-Architekturen und PowerPC-Architekturen sind (diese sind ziemlich alt jetzt.) Sie müssen sich also wirklich nur um i386 (32-Bit-Anwendungen) und x86_64 (64-Bit-Anwendungen) kümmern.
Bei gepackten Anwendungen sollte man mit der rechten Maustaste klicken und Paketinhalt anzeigen . In den meisten Apps findet contents → macOS
man darunter eine ausführbare Datei. Sein Pfad sollte als Argument für verwendet werden file
.
file /Applications/BitTorrent.app/Contents/MacOS/BitTorrent
ich bekomme Mach-O executable i386
. Was bedeutet das ?i386
usw. finden könnte. Könnten Sie bitte eine solche Referenz hinzufügen?file
Befehl sieht sich im Grunde viele Arten von Dateien an und versucht, sie zu identifizieren. Bei ausführbaren OSX-Dateien werden Sie fast immer eine oder mehrere davon sehen: i386
, x86_64
, und ppc
die jeweils 32-Bit-Intel/Amd-Architekturen, 64-Bit-Intel/Amd-Architekturen und Power-PC-Architekturen sind (letztere sind jetzt ziemlich alt. ) Sie müssen sich also wirklich nur um i386 (32-Bit-Anwendungen) und x86_64 (64-Bit-Anwendungen) kümmern. Der einzige Grund, warum sie von Bedeutung sind, ist, dass Apple die Unterstützung für 32-Bit-Anwendungen einstellt.Ich hatte immer wieder die Meldung "Das Plug-in hat beim Sammeln dieser Informationen nicht schnell genug reagiert." Problem und konnte es mit keiner der vorgeschlagenen Methoden lösen.
Es stellt sich heraus, dass es ein Befehlszeilentool namens system_profiler
gibt, das dieselben Informationen bereitstellt.
Also ging ich direkt zur Quelle und schrieb ein kleines Ruby-Skript, um eine Liste mit weiteren Informationen darüber zusammenzustellen, wo sich die Anwendung befindet und die Installationsquelle (falls verfügbar).
Das Skript finden Sie hier .
Benutzer209279
Cody Grey
Kasperd
Benutzer209279
Alles in einem
Cody Grey