Forum

Mac kan inte bygga för Apple Silicon

S

Mr Cuete

Originalaffisch
9 november 2011
  • 21 december 2020
Enligt utvecklardokumentationen behöver jag bara göra min applikation för Apple Silicon och Intel genom att klicka på applikationen i aktivitetsfältet och välja appnamn>Val som helst Mac (Apple Silicon, Intel). Jag kan inte bygga min app med denna valda. Jag får ett felmeddelande:

En enhet som endast är byggd kan inte användas för att köra detta mål.

Välj en tillgänglig enhet eller välj en simulerad enhet som destination.

I mina bygginställningar har jag Architectures inställda på Standard Architectures (Apple Silicon, Intel) - standard för XCode 12.3.
My Build Active Architecture Only är inställd på NO. Detta är standard för XCode 12.3.

Jag ser inte var jag skulle kunna ändra inställningarna för att fixa detta och bygga en app för båda arkitekturerna. Vad är fel?

Även nyare versioner av inställningsfönstret har tre kolumner: Löst, appnamn och macOS Default. Jag gissar att den tredje kolumnen visar standardinställningen, vilket är användbart men vad är kolumnen Löst för? Kan jag bli av med det? S

Mr Cuete

Originalaffisch
9 november 2011


  • 21 december 2020
Letar du efter liknande inlägg på Apples utvecklarforum, det ser ut som att du bara kan göra detta på en ARM MAC.

casperes 1996

26 januari 2014
Horsens, Danmark
  • 21 december 2020
Jag menar att felet du får inte är ett byggfel. Det låter som att du klickar på bygg och kör med ett mål som bara är ett byggmål. CMD+B för att bara bygga och inte köra; Funkar inte det bra för dig? S

Szymczyk

5 mars 2006
  • 21 december 2020
Du måste arkivera projektet på en Intel Mac för att göra en binär som körs på både Intel och M1 Mac. Välj Produkt > Arkivera för att arkivera projektet. Efter att ha arkiverat projektet kan du exportera det från Organizer.
Reaktioner:martyjmclean och XRayAdamo S

Mr Cuete

Originalaffisch
9 november 2011
  • 21 december 2020
Nej, du KAN inte bygga det med projektet som är inställt på att bygga för båda och jag tror inte att du kan arkivera det om det inte är byggt. S

Szymczyk

5 mars 2006
  • 21 december 2020
Välj Min Mac från hoppfältet istället för valfri Mac. Jag byggde och arkiverade ett befintligt Mac-projekt som en universell binär på en Intel Mac på det sättet.

Jag försökte välja valfri Mac från hoppfältet. Jag kunde inte bygga projektet och jag fick samma fel som beskrivs i det ursprungliga inlägget. Jag kunde arkivera projektet.

casperes 1996

26 januari 2014
Horsens, Danmark
  • 22 december 2020
Senor Cuete sa: Nej, du KAN INTE bygga den med projektet som ska byggas för båda och jag tror inte att du kan arkivera det om det inte är byggt.
Detta är uppenbarligen falskt, kompis



Du kan inte bygga och köra. Men du kan verkligen bygga det.
Reaktioner:martyjmclean S

Mr Cuete

Originalaffisch
9 november 2011
  • 2 januari 2021
I bygginställningarna för mitt projekt är standardarkitekturinställningen Standard Architectures (Apple Silicon, Intel) $(ARCHS_STANDARD). När jag använder
lipo path/appname.app/Contents/MacOS/appname -archs den returnerar x86_64 arm64 så att den bygger en universell binär automatiskt. Jag undrar vad aktivitetsfältet Any Mac (Apple Silicon, Intel) gör. TILL

ADGrant

26 april 2018
  • 4 januari 2021
Senor Cuete sa: I bygginställningarna för mitt projekt är standardarkitekturinställningen Standard Architectures (Apple Silicon, Intel) $(ARCHS_STANDARD). När jag använder
lipo path/appname.app/Contents/MacOS/appname -archs den returnerar x86_64 arm64 så att den bygger en universell binär automatiskt. Jag undrar vad aktivitetsfältet Any Mac (Apple Silicon, Intel) gör.
Det bygger den universella binära filen för att släppa. Om du bygger appen med MyMac som mål kommer den att byggas för den maskinen (x86_64 för en Intel Mac och arm64 för en Arm Mac). Xcode på Arm Mac-datorerna låter dig också bygga och köra en Intel-binär med Rosetta.