XCode Framework Rutas de reference y compilation de resultados Directorio

Tengo un espacio de trabajo, Application.xcworkspace, que construye dos frameworks y un ejecutable que utiliza esos frameworks. Aquí es más o less como se presentan:

El problema que tengo es que las routes en el file de proyecto para los frameworks referencedos son la ruta fea DerivedData – son como ../../Library/Developer/XCode/DerivedData/Application-longuglyuniquestring/Build/Products/Release/Framework_1 .framework.

Si copio la fuente a otro directory, o la controlo en el control de versión y la reviso en otra máquina, entonces esas routes de framework ya no son válidas. Se vuelven a generar. Los frameworks referencedos aparecen como rojos en el proyecto.

Hasta ahora, cuando quiero build el espacio de trabajo en otra carpeta, la forma en que solucioné el problema es:

  • Construya el espacio de trabajo – Framework_1 crea.
  • Vaya al nodo "Productos" para ese marco y muéstralo en el Finder.
  • Copie la nueva ruta fea.
  • Abra los files de proyecto para Framework_2 y Application y corrija la ruta para Framework_1 y Framework_2.
  • Todos los elementos rojos deben resolverse y todo debe buildse.

Ese process es tedioso y tengo suerte de que el file del proyecto pueda editarse. Es peor para los colegas que no entienden lo poco que sé sobre los files del proyecto, y solo quiero verificar el código y hacer que se compile.

¿Hay algo que necesito hacer en el directory de salida de compilation para los frameworks? He estado receloso de cambiarlo ya que se recomienda el path feo. ¿Hay una opción de files de copy que pueda usar para colocar esos frameworks en una location pnetworkingecible en relación con mi espacio de trabajo?

Cualquier ayuda sería apreciada. Estoy seguro de que me estoy perdiendo algo simple: no tiene sentido que el código verificado fuera del control de origen o copydo a otro directory no solo se comstackra.

Parece que existe una manera de establecer el directory DerivedData en un espacio por espacio de trabajo – Xcode 4 – crear directory de salida

Acabo de establecer DerivedData para ser relativo a mi espacio de trabajo, luego edité los files del proyecto en consecuencia. El único inconveniente es que si utilizara uno de esos proyectos en otro espacio de trabajo que utilizaba la ruta pnetworkingeterminada DerivedData, tendría que volver a cambiarlos.

Muchas gracias a los usuarios DaGaMs – recibió un voto positivo.

Sigo viendo un mal comportamiento de XCode 5: tengo el proyecto trabajando en mi máquina. Lo copió en otro, más abajo, directory y verificó que aún funcionaba. Salió del XCode y copió el directory que contenía en una unidad de networking, y desde allí a otra Mac. Cuando lo abrí en el otro Mac fue como si nunca hubiera hecho algunos de los cambios. ¡Peor aún, mientras trabajaba para solucionarlo, XCode se volvió loco y agregó 6 caracteres '\' extra a cada extremo de mis routes FRAMEWORK_SEARCH_PATHS!

Parte del problema proviene de que los directorys de los subproyectos en mi aplicación son absolutos en lugar de relativos. Los proyectos en la parte superior del espacio de trabajo son "Relativos al grupo", por lo que cambié los subproyectos para tener el mismo atributo. Eso parece haber resuelto el problema, aunque por alguna razón cuando copio todos los files a otra máquina, la networkingirección de Datos Derivados no constring con ella.