Domanda

Vorrei sapere come è possibile sostenere le architetture i386 e ppc per i programmi in / bin.

corro per esempio

bin  $ file amber

ho

amber: setgid Mach-O universal binary with 2 architectures
amber (for architecture i386):  Mach-O executable i386
amber (for architecture ppc):   Mach-O executable ppc

Come faccio programmi supportano i386 e ppc nel codice sorgente?

In altre parole, i componenti che si può rimuovere, per esempio, in / bin / ambra se si rimuove il supporto del ppc -Architettura?

È stato utile?

Soluzione

Si chiama Universal Binary . In breve, l'eseguibile contiene entrambi i tipi di codice eseguibile. Apple ha un documento pubblicato che descrive come gli sviluppatori dovrebbero costruire le loro applicazioni per funzionare su entrambe le piattaforme.

L'eseguibile lipo può essere utilizzato per rimuovere entrambe le versioni del file eseguibile dal file. Se volete che i vostri eseguibili per contenere una sola versione, è possibile utilizzare lipo per raggiungere questo obiettivo.

Essere consapevoli del fatto che non v'è più di un semplice ppc e i386, anche se questi sono i più "sicure" architetture tra cui scegliere per un binario universale. Leggere la pagina di manuale di arch ; Ci si può vedere che una moderna binario OSX può contenere qualsiasi ppc, ppc64, i386 o x86_64. Ci sono molti di più elencati, ma esistono lì per completezza.

Altri suggerimenti

Si chiama un grasso binario .

C'è una copia del codice nativo per entrambe le architetture del binario. Il formato binario e il sistema operativo devono sostenerlo, in modo che possa sapere dove guardare nel file per il codice corretto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top