Fóruns

Mac não pode ser construído para Apple Silicon

S

Senhor cuete

Pôster original
9 de novembro de 2011
  • 21 de dezembro de 2020
De acordo com a documentação do desenvolvedor, tudo o que tenho que fazer para construir meu aplicativo para Apple silicon e Intel é clicar no aplicativo na barra de tarefas e selecionar appname> Any Mac (Apple Silicon, Intel). Não consigo construir meu aplicativo com este selecionado. Recebo um erro:

Um dispositivo apenas de construção não pode ser usado para executar este destino.

Selecione um dispositivo disponível ou escolha um dispositivo simulado como destino.

Em minhas configurações de compilação, tenho arquiteturas definidas para arquiteturas padrão (Apple Silicon, Intel) - padrão para XCode 12.3.
My Build Active Architecture Only está definido como NO. Este é o padrão para XCode 12.3.

Não vejo onde poderia alterar as configurações para corrigir isso e construir um aplicativo para ambas as arquiteturas. O que está errado?

Além disso, as versões mais recentes do painel de configurações têm três colunas: Resolved, appname e macOS Default. Estou supondo que a terceira coluna mostra a configuração padrão, o que é útil, mas para que serve a coluna Resolvido? Posso me livrar disso? S

Senhor cuete

Pôster original
9 de novembro de 2011


  • 21 de dezembro de 2020
Procurando por postagens semelhantes nos Fóruns de desenvolvedores da Apple, parece que você só pode fazer isso em um ARM MAC.

casperes1996

26 de janeiro de 2014
Horsens, Dinamarca
  • 21 de dezembro de 2020
Quero dizer, o erro que você está recebendo não é um erro de compilação. Parece que você está clicando em construir e executar com um alvo que é apenas um alvo de construção. CMD + B para apenas construir e não executar; Isso não funciona bem para você? S

Szymczyk

5 de março de 2006
  • 21 de dezembro de 2020
Você tem que arquivar o projeto em um Mac Intel para fazer um binário que rode em Macs Intel e M1. Escolha Produto> Arquivar para arquivar o projeto. Depois de arquivar o projeto, você pode exportá-lo do Organizer.
Reações:martyjmclean e XRayAdamo S

Senhor cuete

Pôster original
9 de novembro de 2011
  • 21 de dezembro de 2020
Não, você NÃO PODE construí-lo com o projeto definido para construir para ambos e eu não acho que você pode arquivá-lo a menos que seja construído. S

Szymczyk

5 de março de 2006
  • 21 de dezembro de 2020
Escolha Meu Mac na barra de salto em vez de Qualquer Mac. Construí e arquivei um projeto Mac existente como um binário universal em um Mac Intel dessa forma.

Tentei escolher Any Mac na barra de salto. Não consegui construir o projeto e recebi o mesmo erro descrito na postagem original. Consegui arquivar o projeto.

casperes1996

26 de janeiro de 2014
Horsens, Dinamarca
  • 22 de dezembro de 2020
O Senor Cuete disse: Não, você NÃO PODE construí-lo com o projeto definido para construir para ambos e eu não acho que você pode arquivá-lo a menos que seja construído.
Isso é evidentemente falso, cara



Você não pode construir e executar. Mas você realmente pode construí-lo.
Reações:martyjmclean S

Senhor cuete

Pôster original
9 de novembro de 2011
  • 2 de janeiro de 2021
Nas configurações de compilação do meu projeto, a configuração de arquitetura padrão é Arquiteturas padrão (Apple Silicon, Intel) $ (ARCHS_STANDARD). Quando eu uso o
lipo path / appname.app / Contents / MacOS / appname -archs ele retorna x86_64 arm64 então está construindo um binário universal automaticamente. Estou me perguntando o que a barra de tarefas Any Mac (Apple Silicon, Intel) faz. PARA

ADGrant

26 de abril de 2018
  • 4 de janeiro de 2021
O Senor Cuete disse: Nas configurações de compilação do meu projeto, a configuração da arquitetura padrão é Arquiteturas Padrão (Apple Silicon, Intel) $ (ARCHS_STANDARD). Quando eu uso o
lipo path / appname.app / Contents / MacOS / appname -archs ele retorna x86_64 arm64 então está construindo um binário universal automaticamente. Estou me perguntando o que a barra de tarefas Any Mac (Apple Silicon, Intel) faz.
Isso cria o binário universal para lançamento. Se você criar o aplicativo com MyMac como destino, ele será criado para essa máquina (x86_64 para um Intel Mac e arm64 para um Arm Mac). O Xcode no Arm Macs também permite que você crie e execute um binário Intel usando Rosetta.