Fora

Mac kan ikke bygge til Apple Silicon

S

Mr. Cuete

Original plakat
9. november 2011
  • 21. december 2020
Ifølge udviklerdokumentationen skal jeg bare klikke på applikationen i proceslinjen for at bygge min applikation til Apple silicium og Intel, og vælge appnavn>Enhver Mac (Apple Silicon, Intel). Jeg kan ikke bygge min app med denne valgte. Jeg får en fejl:

En enhed, der kun er bygget, kan ikke bruges til at køre dette mål.

Vælg venligst en tilgængelig enhed, eller vælg en simuleret enhed som destination.

I mine Build Settings har jeg Architectures sat til Standard Architectures (Apple Silicon, Intel) - standard for XCode 12.3.
My Build Active Architecture Only er indstillet til NO. Dette er standarden for XCode 12.3.

Jeg kan ikke se, hvor jeg kunne ændre indstillingerne for at rette dette og bygge en app til begge arkitekturer. Hvad er der galt?

Også nyere versioner af indstillingsruden har tre kolonner: Løst, appnavn og macOS-standard. Jeg gætter på, at den tredje kolonne viser standardindstillingen, hvilket er nyttigt, men hvad er kolonnen Løst til? Kan jeg slippe af med det? S

Mr. Cuete

Original plakat
9. november 2011


  • 21. december 2020
Leder du efter lignende indlæg på Apples udviklerfora, ser det ud til, at du kun kan gøre dette på en ARM MAC.

casperes1996

26. januar 2014
Horsens, Denmark
  • 21. december 2020
Jeg mener, at den fejl, du får, ikke er en byggefejl. Det lyder som om du klikker på build og kør med et mål, der kun er et build-mål. CMD+B til bare at bygge og ikke køre; Virker det ikke helt fint for dig? S

Szymczyk

5. marts 2006
  • 21. december 2020
Du skal arkivere projektet på en Intel Mac for at lave en binær, der kører på både Intel og M1 Macs. Vælg Produkt > Arkiver for at arkivere projektet. Efter arkivering af projektet kan du eksportere det fra arrangøren.
Reaktioner:martyjmclean og XRayAdamo S

Mr. Cuete

Original plakat
9. november 2011
  • 21. december 2020
Nej, du KAN ikke bygge det med projektet sat til at bygge til begge, og jeg tror ikke, du kan arkivere det, medmindre det er bygget. S

Szymczyk

5. marts 2006
  • 21. december 2020
Vælg Min Mac fra springlinjen i stedet for Enhver Mac. Jeg byggede og arkiverede et eksisterende Mac-projekt som en universel binær på en Intel Mac på den måde.

Jeg prøvede at vælge Enhver Mac fra springlinjen. Jeg var ude af stand til at bygge projektet, og jeg fik den samme fejl beskrevet i det oprindelige indlæg. Jeg var i stand til at arkivere projektet.

casperes1996

26. januar 2014
Horsens, Denmark
  • 22. december 2020
Senor Cuete sagde: Nej, du KAN IKKE bygge det med projektet, der skal bygges til begge, og jeg tror ikke, du kan arkivere det, medmindre det er bygget.
Dette er åbenbart falsk, makker



Du kan ikke bygge og køre. Men du kan faktisk bygge det.
Reaktioner:martyjmclean S

Mr. Cuete

Original plakat
9. november 2011
  • 2. januar 2021
I byggeindstillingerne for mit projekt er standardarkitekturindstillingen Standard Architectures (Apple Silicon, Intel) $(ARCHS_STANDARD). Når jeg bruger
lipo path/appname.app/Contents/MacOS/appname -archs det returnerer x86_64 arm64, så det opbygger en universel binær automatisk. Jeg spekulerer på, hvad proceslinjen Enhver Mac (Apple Silicon, Intel) gør. TIL

ADGrant

26. april 2018
  • 4. januar 2021
Senor Cuete sagde: I byggeindstillingerne for mit projekt er standardarkitekturindstillingen Standard Architectures (Apple Silicon, Intel) $(ARCHS_STANDARD). Når jeg bruger
lipo path/appname.app/Contents/MacOS/appname -archs det returnerer x86_64 arm64, så det opbygger en universel binær automatisk. Jeg spekulerer på, hvad proceslinjen Enhver Mac (Apple Silicon, Intel) gør.
Det bygger Universal binær til frigivelse. Hvis du bygger appen med MyMac som dit mål, vil den bygge til den maskine (x86_64 til en Intel Mac og arm64 til en Arm Mac). Xcode på Arm Mac'erne giver dig også mulighed for at bygge og køre en Intel-binær ved hjælp af Rosetta.