Pergunta

Eu sou um usuário VS.NET experiente e tentando se levantar e correr em Xcode 3.1.1.
Aqui está o que eu estou tentando fazer:

Eu gostaria de uma biblioteca estática ( "Lib") para ter seu próprio arquivo xcodeproj. Eu tinha um aplicativo executável ( "PDA") que faz uso de Lib para referenciar arquivo xcodeproj do Lib para que as alterações Lib causa App para vincular novamente. Idealmente, eu gostaria de ser capaz de arquivos de origem edição do Lib dentro do espaço de trabalho Xcode da App então eu não tenho que tarefa o tempo todo para fazer alterações.

Eu descobri a partir da ajuda on-line que eu posso simplesmente arrastar o xcodeproj lib estática no projeto do meu aplicativo e torna-se a referência. Vejo que uma vez o meu xcodeproj lib estática é no projeto de meu aplicativo, eu posso simplesmente arrastá-lo para a meta do App e entende que App depende Lib. Este parece ser o caminho certo, mas as coisas não são bastante funcionando da maneira que eu gostaria ainda.

Aqui estão as minhas perguntas:

  1. Parece que simplesmente ter App dependem Lib não causa App para ligação com Lib. Parece que eu tenho que arrastar explicitamente libLib.a da pasta Lib em "link binário com Bibliotecas" fase de construção do App. Em VS.NET, simplesmente especificando o projeto como uma dependência solução adiciona à linha de ligação. Eu só quero ter certeza que eu não estou perdendo nada.

  2. Quando tenho App aberta no Xcode e eu arrastar Lib.xcodeproj para ele, eu não obter qualquer um dos arquivos de origem do Lib lá. Eu só fico libLib.a sob a pasta "Lib.xcodeproj". Em VS.NET, posso editar arquivos de origem do Lib ali e reconstruí-lo, etc ... mas com essa abordagem no Xcode, as alterações Lib.cpp não causam Lib para reconstruir quando eu reconstruir App. Idealmente, eu obter todos os arquivos e metas fonte do Lib a aparecer quando eu arrastar Lib.xcodeproj em App. Existe alguma maneira de fazer isso?

Agradecemos antecipadamente para quaisquer respostas!

Foi útil?

Solução

Você está correto que fazendo-alvo A depender alvo B (se dentro do mesmo projeto ou entre projetos) faz não causa alvo à ligação contra o alvo B. Você precisa especificá-las distintamente; isso é porque eles são conceitos distintos, e você pode ter dependências entre os alvos que você não quiser ligar um ao outro - por exemplo, uma ferramenta de linha de comando que é construído por alvo C e é utilizado como parte do processo de construção para o alvo a.

Além disso, você está correto que referenciando projecto B de dentro do projeto Um não vai deixar você ver o código fonte do projeto do B na janela de projecto do A. Isso porque Xcode não têm o mesmo modelo de "espaço de trabalho" que Visual Studio e Eclipse fazer; você acima aludido à existência de "um espaço de trabalho que contém o projeto A", mas Xcode realmente não tem nada disso, apenas uma janela representa projeto A.

Outras dicas

Abra o projeto do App. Clique com o botão direito do mouse sobre o alvo App e escolha "Get Info". Então vá para o "Guia Geral" e encontrar "Direct Dependências." Clique no botão (+) (sinal de mais) para adicionar uma dependência direta. O Lib.xcodeproj deve aparecer entre uma lista de possibilidades para você. Escolha o alvo Lib a partir dessa lista.

Isso deve realizar que o projeto deve construir Lib (ou reconstruir) quando você constrói o alvo App.

(Editar meu post agora. Eu percebo que eu não disse nada sobre o ponto número 2 em questão. Na verdade, eu ainda estou pensando sobre o número 2. Eu não tenho certeza se isso é possível ou não.)

Estou também novato para Xcode 3.1, apenas jogado com mencionado por você questões e constatou que não há nenhum problema em relação à sua segunda pergunta. Qualquer aplicação que você usar para editar o código-fonte biblioteca dependência, o seu principal projeto irá reconstruir o alvo dependência. Eu verifiquei por:

  1. editou o arquivo de origem, da biblioteca de sua aplicação dependem, por aplicação do bloco de notas.
  2. dependência referência de projeto de biblioteca selecionado, clique direito do mouse e selecione 'Abrir com localizador', em seguida, o arquivo selecionado e fonte queria editou.

Tudo funcionando bem.

Eu também sou um bastante novo usuário do Xcode. A maioria do que eu sei que eu aprendi de um livro Xcode por James Bucanek (ISBN 047175479x). É um livro antigo que foi escrito para / com o Xcode 2.2, mas eu acho que praticamente tudo isso ainda se aplica para mim hoje, e eu uso atualmente Xcode 3.1

Você pode provavelmente encontrar uma cópia usado barato se você estiver interessado.

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