Forumuri

Mac nu se poate construi pentru Apple Silicon

S

domnule Cuete

Poster original
9 noiembrie 2011
  • 21 decembrie 2020
Conform documentației pentru dezvoltatori, tot ce trebuie să fac pentru a-mi construi aplicația pentru Apple silicon și Intel este să dau clic pe aplicație din bara de activități și să selectez appname>Any Mac (Apple Silicon, Intel). Nu pot să-mi construiesc aplicația cu acest lucru selectat. primesc o eroare:

Un dispozitiv numai pentru build nu poate fi utilizat pentru a rula această țintă.

Vă rugăm să selectați un dispozitiv disponibil sau să alegeți un dispozitiv simulat ca destinație.

În Setările mele de construcție am Arhitecturi setate la Arhitecturi standard (Apple Silicon, Intel) - implicit pentru XCode 12.3.
My Build Active Architecture Only este setat la NU. Aceasta este valoarea implicită pentru XCode 12.3.

Nu văd unde aș putea schimba setările pentru a remedia acest lucru și a construi o aplicație pentru ambele arhitecturi. Ce s-a întâmplat?

De asemenea, versiunile mai noi ale panoului de setări au trei coloane: Rezolvat, nume aplicație și Implicit macOS. Bănuiesc că a treia coloană arată setarea implicită, care este utilă, dar pentru ce este coloana Rezolvată? Pot să scap de el? S

domnule Cuete

Poster original
9 noiembrie 2011


  • 21 decembrie 2020
Căutând postări similare pe forumurile pentru dezvoltatori Apple, se pare că puteți face acest lucru numai pe un ARM MAC.

casperes1996

26 ianuarie 2014
Horsens, Danemarca
  • 21 decembrie 2020
Vreau să spun că eroarea pe care o primești nu este o eroare de compilare. Se pare că faceți clic pe build și rulați cu o țintă care este doar o țintă de compilare. CMD+B doar pentru a construi și nu a rula; Nu funcționează bine pentru tine? S

Szymczyk

5 martie 2006
  • 21 decembrie 2020
Trebuie să arhivați proiectul pe un Intel Mac pentru a crea un binar care rulează atât pe Intel, cât și pe M1 Mac. Alegeți Produs > Arhivă pentru a arhiva proiectul. După arhivarea proiectului, îl puteți exporta din Organizator.
Reacții:martyjmclean și XRayAdamo S

domnule Cuete

Poster original
9 noiembrie 2011
  • 21 decembrie 2020
Nu, NU îl puteți construi cu proiectul setat să fie construit pentru ambele și nu cred că îl puteți arhiva decât dacă este construit. S

Szymczyk

5 martie 2006
  • 21 decembrie 2020
Alegeți My Mac din bara de salt în loc de Any Mac. Am construit și arhivat un proiect Mac existent ca un binar universal pe un Mac Intel în acest fel.

Am încercat să aleg Any Mac din bara de salt. Nu am putut construi proiectul și am primit aceeași eroare descrisă în postarea originală. Am putut să arhivez proiectul.

casperes1996

26 ianuarie 2014
Horsens, Danemarca
  • 22 decembrie 2020
Senor Cuete a spus: Nu, NU îl puteți construi cu proiectul setat pentru a construi pentru ambele și nu cred că îl puteți arhiva decât dacă este construit.
Acest lucru este evident fals, amice



Nu puteți Build & Run. Dar într-adevăr îl poți construi.
Reacții:martyjmclean S

domnule Cuete

Poster original
9 noiembrie 2011
  • 2 ianuarie 2021
În setările de construcție pentru proiectul meu, setarea implicită a arhitecturii este Arhitecturi standard (Apple Silicon, Intel) $(ARCHS_STANDARD). Când folosesc
lipo path/appname.app/Contents/MacOS/appname -archs returnează x86_64 arm64, așa că construiește automat un binar universal. Mă întreb ce face bara de activități Any Mac (Apple Silicon, Intel). LA

ADGrant

26 aprilie 2018
  • 4 ianuarie 2021
Senor Cuete a spus: În setările de construcție pentru proiectul meu, setarea implicită a arhitecturii este Arhitecturi standard (Apple Silicon, Intel) $(ARCHS_STANDARD). Când folosesc
lipo path/appname.app/Contents/MacOS/appname -archs returnează x86_64 arm64, așa că construiește automat un binar universal. Mă întreb ce face bara de activități Any Mac (Apple Silicon, Intel).
Asta construiește binarul universal pentru eliberare. Dacă creați aplicația cu MyMac ca țintă, aceasta se va construi pentru acea mașină (x86_64 pentru un Mac Intel și arm64 pentru un Mac Arm). Xcode pe Arm Mac vă permite, de asemenea, să construiți și să rulați un binar Intel folosind Rosetta.