Pergunta

Eu estou apenas começando com o Xcode e aprender Objective-C & Cacau, seria útil para trocar o compilador no Xcode 3.2 a Clang para a verificação de erros melhorado e analisador estático. Estou curioso para saber se os extras dadas seria útil ou seria meu aprendizado ser melhor servido degola para as configurações padrão?

Muito obrigado

gary

Foi útil?

Solução

Existem algumas opções para usar CLANG:

  1. Executar construção e analisar, para ver clang resultados.

  2. Em configurações de projeto para um configuração, você pode verificar o caixa e CLANG "estático analisador de executar" será executado cada vez que você compilar.

  3. Você também pode alterar o compilador do GCC 4.x para CLANG / LLVM. que exibe mais erros e Clang avisos (um exemplo é que NSLog(@"A value is %@:%@", value) irá avisá-lo que você não está passando suficientes parâmetros).

Eu recomendaria a opção 2 - se você executar o analisador estático com cada compilação, ele não leva muito mais tempo e você vai descobrir se você está fazendo algo estranho imediatamente, em vez de fixar um monte de erros mais tarde . As mensagens claras que dará realmente fornecer um monte de valor educativo, por isso faz ainda mais sentido para ligá-lo se você está apenas aprendendo!

A opção 3 é bom para executar ao longo do tempo por causa da verificação maior erro. No entanto, atualmente XCode não tem compilador CLANG / LLVM para o dispositivo iPhone, e assim você só pode usar essa configuração ao compilar para o simulador. A melhor abordagem é, então, para criar uma cópia da configuração de depuração (na guia configurações de configurações de projeto) com o nome "Debug CLANG", e definir essa configuração para usar o compilador CLANG / LLVM e executar o analisador estático. Note que depois de criar uma nova configuração que você tem que desistir de configurações, selecione-o como a configuração ativa (via o topo suspensa direita) e, em seguida, voltar-se para configurações de projeto para editar os valores.

Em seguida, no dia-a-dia você simplesmente usar o "Debug" configuração para compilar usando o analisador estático, e mude para "Debug CLANG" talvez uma vez por semana para ver se existem quaisquer problemas mais profundos.

Outras dicas

Você pode usar o analisador estático sem usar o compilador Clang real. Geralmente você não iria usar o analisador como sua opção de configuração padrão como ele diminui o tempo de construção um pouco justo.

No entanto, o compilador Clang é uma boa opção, mesmo sem considerar a análise estática. Ele tem muito melhor relatório de erros como você aponta, mas a principal vantagem é que ele é muito rápido, na verdade, no meu teste é quase duas vezes mais rápido que GCC.

Se você "Construir e Analisar" ou ligar a preferência "Run estática Analyzer" no Xcode, você começa a análise estática do Clang.

Se você não está fazendo o desenvolvimento de C ++, não parece ser muito desvantagem para mudar de gcc para Clang. Você só não precisa fazê-lo para obter os benefícios da análise estática do Clang.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top