Xcode - o que é $ (SRCROOT)?

115

Estou olhando para um projeto Xcode que usa algumas bibliotecas. O projeto foi criado em um computador diferente, então preciso atualizar alguns caminhos. Todos os caminhos de pesquisa da biblioteca começam com $(SRCROOT). O que isso significa?

William Jockusch
fonte
4
SRCROOT
Bala

Respostas:

147

É o caminho para o diretório que contém o projeto Xcode.

mipadi
fonte
O estranho é que, quando vejo os caminhos nas configurações de construção, todos eles começam com / Users / stevew. Quando clico duas vezes para obter a exibição de detalhes dessa configuração, todos eles começam com $ (SRCRoot). Mas não há diretório / Users / stevew em meu computador. Então, de alguma forma, ele ficou travado no local do outro computador?
William Jockusch de
Provavelmente alguém definiu SRCROOT usando um caminho absoluto - geralmente é um diretório raiz conveniente para todo o código-fonte em seu projeto, mas não deve ser um caminho absoluto, a menos que você tenha apenas uma máquina de desenvolvimento.
Paul R
Adicionando à sua resposta, é o diretório do XcodeProject local, então se você tiver MailCore em seu projeto, SRCROOT da MailCore é o diretório onde você abre o Projeto MailCore. O XCode tem esse problema de usabilidade em que você não pode rolar para a direita na tela de configurações do projeto, então se você tem um caminho longo, você não será capaz de dizer isso, portanto, estou adicionando a esta resposta para aqueles com nomes de lib longos. Obrigado mipadi pela resposta principal.
Stephen J de
30
o que dizer PROJECT_DIR? Qual é a diferença SRCROOT?
Gon
Não faça perguntas nos comentários; consulte a pergunta 36323031 sobre Stack Overflow.
SwiftArchitect
3

$(SRCROOT)(aka $(SOURCE_ROOT)) é um caminho para sua localização onde a .xcodeprojestá.

É simples de verificar, basta colocá-lo em um campo e o Xcode dá uma dica

insira a descrição da imagem aqui

yoAlex5
fonte