ios objective-c xcode5

ios - La referencia a ''X'' es ambigua



objective-c xcode5 (8)

Acabo de tener las mismas advertencias ensuciando mi informe de compilación (pero solo debajo del triángulo). Al final, lo que funcionó para mí fue asegurar que CADA uso de:

#import <Module/Module.h>

En la aplicación fue reemplazado por:

@import Module;

¡Ahora todas esas molestas advertencias se han ido!

Después de varios cambios en mi proyecto, de repente me aparece el error de compilación:

Reference to ''kCGImageAlphaPremultipliedLast'' is ambiguous

y cuando, al observar el error, me muestra que está referenciado 4 veces.

¿Puede alguien decirme cómo puede suceder esto y cómo puedo averiguar qué está causando esto? No estoy importando nada de CoreGraphics de forma explícita y mi archivo de prefijo solo importa ''Fundación.h'' y algunas macros de creación propia. Sin embargo, estoy importando varios encabezados que contienen código c puro, pero todos están encapsulados en algo como esto:

#ifndef __MYCCODE_H #define __MYCCODE_H // imports here // c code here #endif

Esto sucede en xcode 5 usando LLVM 5.1

Edición: este parece ser un problema diferente con este proyecto. Después de comentar esta línea de código me sale otro error:

Malformed or corrupted AST file: ''Unable to load module "/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache/1NHZ5MC2OSMJV/CoreImage.pcm": module file out of date''

Quitar el módulo y agregarlo de nuevo no ayudó. Eliminar los datos derivados tampoco ayudó. Este error también aparece al volver a un compromiso de trabajo.


Bueno, algunas soluciones aquí son buenas, pero use_frameworks! es exactamente lo que necesito ahora, incluso si hizo que este problema ocurriera. Pero parece que a la compilación no le gusta cuando uso marcos y se hace referencia al encabezado dos veces así.

#import "TSMessage.h" #import "TSMessage+CSExtension.h"

Pero el problema se escapa cuando compila así

#import "TSMessage+CSExtension.h"


De acuerdo, después de crear un nuevo proyecto y de copiarlo todo a este proyecto, la compilación se realizó correctamente. Sin embargo, recibí el error "Archivo AST con formato incorrecto o dañado" varias veces, pero se puede resolver de la siguiente manera:

  • Limpiar el proyecto
  • Borrar todo dentro de ''~ / Library / Developer / Xcode / DerivedData / ModuleCache /'' (el botón dentro de la ventana del organizador no funcionó para mí)
  • Limpiar una vez más
  • Construir proyecto

después de eso funciona bien, excepto que tengo que hacer esta corrección de vez en cuando

También hice una diferencia con el proyecto anterior y parece que una gran cantidad de marcos y otras cosas viejas se atascaron allí al probar cosas, así que en caso de que tengas esto, revisa el archivo de configuración de tu proyecto en busca de cosas viejas.

Pensé que Xcode y yo podemos ser amigos algún día. supongo que no ...


Eliminar use_frameworks! desde el archivo pod arreglar mi problema ambiguo.


Para cualquier persona que aún tenga problemas: ninguna de las soluciones propuestas funcionó en mi caso. Estoy compilando todos mis frameworks usando Carthage y recibí estos errores en mi proyecto principal cada vez que importo un encabezado de un framework que usa un framework usado también por mi proyecto principal. Lo que finalmente se resolvió fue deshabilitar ''Módulos'' en el proyecto principal.


Tal vez esto es lo que importas así:

#importar "xxxx.h"

Lo arreglo a través de esto:

#import <xxxx / xxxx.h>


Tengo este problema cuando he importado un archivo de encabezado dos veces. Después de que uno de ellos es eliminado, el problema desaparece.


utilizar

#import "anyviewcontroller.h"

en lugar de cualquier módulo

@import anymodule;

Estoy usando LGSideMenuController, cuando lo integro por primera vez, funciona bien, pero no sé por qué recibí este error después de un tiempo.

así que reemplacé el módulo @import LGSideMenuController; en el archivo de cabecera Como este #import "UIViewController+LGSideMenuController.h"

y el error desaparece.