peringatan kompilasi: tidak ada aturan untuk memproses file untuk arsitektur i386

245

Bagaimana saya bisa menyelesaikan peringatan ini?

Peringatan [WARN]: tidak ada aturan untuk memproses file '$ (PROJECT_DIR) /MyApp/MessageCell.h' dari jenis sourcecode.objj.h untuk arsitektur i386

Sheehan Alam
sumber
Ia juga mengatakan bahwa ia sedang mencoba untuk mengkompilasi file header Anda sebagai sourcecode.objj.h dari Objective-J (yang juga menggunakan file .h untuk header), apakah Anda telah menginstal Cappuccino?
themarketka

Jawaban:

576

Klik proyek Anda, dan periksa apakah file ini tidak ada di tab Build Phases. Biasanya tidak ada file header yang harus tetap di sini. Bersihkan dan bangun lagi, seharusnya berhasil!

Giuseppe
sumber
1
saya punya beberapa file header di sana. Hanya ingin tahu, mengapa tajuk seharusnya tidak ada di sana?
Sheehan Alam
30
Karena ini adalah daftar file source yang akan dikompilasi, dan biasanya Anda sudah termasuk <file> H dalam Anda <file> m
Giuseppe
1
Setiap kali saya membuat kelas baru, XCode saya secara otomatis menambahkan file header ke fase build saya. Saya tidak tahu mengapa, ada yang tahu mengapa ini terjadi? Saat ini setiap kali saya membuat kelas baru saya perlu menghapus file header dari fase build secara manual.
Bocaxica
1
Saya mungkin menambahkan bahwa file .h dapat muncul dalam fase build (ketika tidak seharusnya) karena file .m memiliki (secara tidak sengaja) nama yang berbeda.
Ali
ini masuk akal ... Saya telah membuat file awalnya sebagai .cpp kemudian berganti nama menjadi .h
ddavison
17

Kita dapat mengatasi masalah ini dengan hanya mengikuti langkah-langkah berikut: - Beberapa .md, .mdown .hfile yang termasuk dalam Sumber Kompilasi
Langkah 1) Pilih Project Navigator
Langkah 2) Pilih proyek Anda
Langkah 3) Pilih targetStep Anda
Langkah 4) Pilih Membangun PhasesStep
Langkah 5) Pindahkan file yang kita tidak ingin kompiler memproses dari Sumber Kompilasi untuk Menyalin Sumber Bundel

Periksa ini

Sudheesh
sumber
3

Jika Anda mendapatkan peringatan ini dari cocoapod Anda, Anda harus memastikan s.source_filessudah diatur dengan benar di .podspec.

Misalnya saya awalnya memasukkan semua file dengan baris ini di file saya .podspec

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

Saya mendapatkan peringatan kompilasi ini untuk beberapa file font yang saya miliki di pod. Anda mengontrol file mana yang muncul di BuildPhases-> CompileSourcespada konsumsi pod seperti ini:

s.source_files = "MyUIElements/**/*.swift", "MyUIElements/**/*.h"
Jon Vogel
sumber
1
atau s.source_files = "Sources**/*.{h,m,swift}"?
hstdt
0

Saya file header masalah was't karena di bawah Target> Build Phases> Compile Resourcestidak ada apapun .h filesuntuk memulai dengan. Sistem itu mengeluh tentang beberapa file lain. Saya mengikuti tautan ini yang pada dasarnya mengatakan hapus file yang dikeluhkan oleh sistem tetapi sebaliknya saya cntrl + menyeretnya ke Copy Bundle Resources.

Cara termudah untuk mencari file adalah dengan menggunakan Filter di sudut kanan atas:

masukkan deskripsi gambar di sini

Berikut ini petunjuk dari tautan:

masukkan deskripsi gambar di sini

Lance Samaria
sumber