2010-03-12 11 views
6

Acabo de empezar a recibir este error hoy, aparentemente de la nada. Cualquiera puede ver esto antes y saber qué lo causa.Xcode: error interno al crear el gráfico de dependencia

Internal error occurred while creating dependency graph: *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[10] 

Esto sucede cuando intento compilar con "iPhone Device 3.x" seleccionado. Sin embargo, si selecciono "iPhone Simulator 3.x", todo está bien.

Estoy usando Xcode 3.2.1.

+0

¿Cómo se crea el contenido de la matriz de objetos? Me pregunto si podría haber una dependencia en algo así como un documento externo que podría ser diferente en el dispositivo que en el sistema de archivos en el simulador. Eso podría explicar que una o más entradas sean nulas en la matriz, lo que desencadenaría el error que describió. – jlehr

+0

El problema es que este es un error de tiempo de compilación y no tengo idea de a qué matriz se refiere el error. De hecho, incluso si comento todos los usos de initWithObjects, sigo recibiendo el error. –

Respuesta

5

Encontré la solución a mi problema y fue bastante simple.

  1. Quit Xcode
  2. Vuelva a abrir Xcode
  3. Abra su proyecto
  4. Limpiar todos los objetivos

Ahora todo funciona bien, aunque me gustaría saber cómo había llegado a ese estado.

+0

Lo que parece es que hay datos obsoletos de información de compilación que Xcode está intentando cargar antes de ejecutar el gráfico de dependencia para determinar si es necesario actualizarlo. Esto puede suceder a través de las versiones beta de Xcode; borrar su carpeta de compilación al pasar de una versión de Xcode a otra a veces es útil, generalmente cuando ha estado instalando nuevos SDK. – cdespinosa

+0

Esto tiene sentido y me actualicé a XCode 3.2.1 recientemente, pero estoy bastante seguro de que esta no fue la primera vez que intenté construir para el dispositivo desde la actualización. –

-1

Tiene un NSArray o NSMutableArray en el que está tratando de insertar un objeto nil o no inicializado. Como lo indica la documentación de estas dos matrices, esto no está permitido.

Debe solucionar dónde está insertando valores en una matriz (presumiblemente objects) y averiguar de dónde proviene el valor nil.

Cuestiones relacionadas