advertencia de compilación: ninguna regla para procesar el archivo para la arquitectura i386


245

¿Cómo puedo resolver esta advertencia?

Advertencia [WARN]: no hay una regla para procesar el archivo '$ (PROJECT_DIR) /MyApp/MessageCell.h' de tipo sourcecode.objj.h para la arquitectura i386


También dice que está intentando compilar sus archivos de encabezado como sourcecode.objj.h desde Objective-J (que también usa archivos .h para encabezados), ¿tiene instalado Cappuccino?
themarketka

Respuestas:


576

Haga clic en su proyecto y verifique que este archivo no esté presente en la pestaña Fases de compilación. Normalmente, ningún archivo de encabezado debe permanecer aquí. Limpiar y construir de nuevo, ¡debería funcionar!


1
Tengo algunos archivos de encabezados allí. Solo por curiosidad, ¿por qué no deberían estar los encabezados?
Sheehan Alam

30
Porque esta es la lista de archivos fuente que se compilará, y normalmente ya ha incluido <file> .h dentro de su <file> .m
Giuseppe

1
Cada vez que creo una nueva clase, mi XCode agrega automáticamente los archivos de encabezado a mis fases de compilación. No sé por qué, ¿alguien tiene idea de por qué sucede esto? Actualmente, cada vez que creo una nueva clase, necesito eliminar los archivos de encabezado de las fases de compilación manualmente.
Bocaxica

1
Podría agregar que un archivo .h puede aparecer en las fases de compilación (cuando no se supone que debe hacerlo) porque el archivo .m tiene (por error) un nombre diferente.
Ali

esto tendría mucho sentido ... Creé el archivo originalmente como .cpp y luego le cambié el nombre a .h
ddavison el


17

Podemos resolver este problema simplemente siguiendo los pasos a continuación: - Algunos .md, los .mdown .harchivos se incluyen en el Compilar Fuentes
Paso 1) Seleccione Project Navigator
Paso 2) Seleccione su proyecto
Paso 3) Seleccione su objetivo
Paso 4 Paso 4) Seleccione Fases de construcción
Paso 5) Mover archivos que no queremos que el compilador procese desde fuentes de compilación para copiar recursos de paquete

Mira esto


3

Si recibe esta advertencia de su cocoapod, debe asegurarse de que s.source_filesesté configurada correctamente en el .podspec.

Por ejemplo, originalmente incluí todos los archivos con esta línea en mi .podspec

s.source_files = "MyUIElements/**/*"

Estaba recibiendo esta advertencia de compilación para algunos archivos de fuentes que tenía en el pod. Usted controla qué archivos aparecen en BuildPhases-> CompileSourcesen el consumo de pods así:

s.source_files = "MyUIElements/**/*.swift", "MyUIElements/**/*.h"

1
o s.source_files = "Sources**/*.{h,m,swift}"?
hstdt

0

Mi problema era't archivos de cabecera porque bajo Target> Build Phases> Compile Resourcesque no había ninguno .h files, para empezar. El sistema se quejaba de algunos otros archivos. Seguí este enlace que básicamente decía que eliminara los archivos de los que se quejaba el sistema, pero en su lugar, cntrl + los arrastré Copy Bundle Resources.

La forma más fácil de buscar los archivos es usar el filtro en la esquina superior derecha:

ingrese la descripción de la imagen aquí

Aquí están las instrucciones del enlace:

ingrese la descripción de la imagen aquí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.