Pertanyaan ini telah berkembang selama beberapa minggu terakhir untuk membahas masalah yang lebih umum xcode4 (dan proyek peningkatan versi lebih lama xcodes).
Namun banyak masalah yang dapat diselesaikan dengan mengikuti instruksi yang sama.
Jika Anda mengalami salah satu masalah berikut, coba metode dalam jawaban yang diterima:
- Xcode 4 gagal mengarsipkan Aplikasi
- Xcode 4 membuat arsip yang tidak dapat digunakan
- Xcode 4 tidak membuat .ipa
- Xcode 4 gagal untuk dikompilasi karena kesalahan preprocessor
- Xcode 4 tidak dapat menemukan header
- Kode Xcode 4 lengkap tidak berfungsi
- Ketergantungan proyek tidak dapat dikompilasi
- Menambahkan ketergantungan menyebabkan salah satu masalah di atas
Pertanyaan Asli
Judul: "file masalah leksikal atau preprocessor tidak ditemukan" di Xcode 4
Saya memiliki proyek di Xcode 4 yang akan dibangun dengan baik dan berjalan di perangkat dan simulator tetapi ketika mencoba Mengarsipkan kesalahan ketika mencari file header yang terkait dengan perpustakaan statis:
In file included from /Volumes/Development/Path/LBProject/LBProject/LBProject-Prefix.pch:15:
In file included from /Volumes/Development/Path/LBProject/LBFDefines.h:23:
In file included from /Volumes/Development/Path/LBProject/Classes/LBProjectAppDelegate.h:11:
In file included from /Volumes/Development/Path/LBProject/LBProject/../FKNDirectory/FKNDirectoryManager.h:10:
/Volumes/Development/Path/LBProject/LBProject/../FKNDirectory/FKNDataModel.h:11:9: fatal error: 'Merchant.h' file not found [1]
#import "Merchant.h"
^
1 error generated.
Xcode memberikan kesalahan
lexical or preprocessor issue file not found
Banyak Googling telah menunjukkan banyak orang mengalami masalah ini tetapi tidak ada solusi. Siapapun mendapat perbaikan atau bahkan petunjuk.
Pembaruan: Jalur user header
pencarian diatur ke ${BUILT_PRODUCTS_DIR}
dalam semua konfigurasi. Itu dibangun dengan baik menggunakan konfigurasi apa pun kecuali saat mengarsipkan.
Pembaruan 2: Merchant.h
adalah kelas Data Inti yang dihasilkan secara otomatis dan karena itu di dalam .xcdatamodeld
paket, namun semua header disalin ke direktori header publik saat perpustakaan dibangun.
sumber
Saya memiliki masalah yang sama di XCode 4: "Masalah leksikal atau preprocessor MyFile.h tidak ditemukan". Namun, MyFile.m bukanlah pustaka statis, hanya kelas standar. Dan MyFile.m dan MyFile.h disertakan dengan benar dan diindeks dalam proyek.
Jadi ... Saya keluar dari XCode dan Simulator, lalu memulai ulang dan masalahnya hilang.
sumber
Saya menemukan bahwa masalahnya hilang ketika saya mengubah pengaturan target build "memindai semua file sumber untuk menyertakan" dari tidak menjadi ya.
sumber
Saya dapat menyelesaikan masalah ini tanpa perubahan apa pun pada pengaturan build apa pun hanya dengan menyalin file .h ke direktori Proyek di finder. Saya TIDAK menambahkannya ke proyek sama sekali. Hanya dengan menempatkan mereka di direktori filesystem project tampaknya cukup untuk memungkinkan penautan implisit Xcode bekerja dengan benar. Lebih lengkapnya di sini .
sumber
Saya punya masalah aneh seperti ini. Mengubah "Pindai semua file sumber daya ..." ke Ya tidak membantu. Saya melihat pada Framework Search Paths dan menyadari bahwa saya memilikinya
Kelihatannya benar tapi masih gagal. Saya kemudian mencoba mengatur ulang urutan 2 & 3 dan tiba-tiba itu dibuat dengan baik. Jadi tidak yakin mengapa itu hickup, tetapi ingin menambahkannya ke daftar hal-hal yang harus dicoba jika itu membantu orang lain.
sumber
Solusi saya adalah mengubah saya
untuk
dan semuanya mulai bekerja kembali. Yang tidak biasa adalah itu berhenti bekerja tiba-tiba setelah dibangun beberapa kali.
sumber
Masalah teratasi dengan sendirinya saat saya mengatur
Bangun Pengaturan-> Proyek-> Jalur Pencarian ke Ya
sumber
Saya memiliki yang sama - 2 target dalam proyek saya ( Project dan ProjectTest of
GHUnit
). Ketika skema saya diatur ke Project , impor<GHUnitIOS/GHUnit.h>
adalah masalah "file masalah leksikal atau preprocessor tidak ditemukan" . Tapi ketika saya menetapkan ProjectTest sebagai skema , semuanya OK. Jadi, saya juga menambahkanGHUnitIOS.framework
di Project .sumber
Sepertinya jalur pencarian header Anda salah tidak dikonfigurasi dengan benar di pengaturan build Anda untuk skema aktif. Verifikasi mereka dan perbarui pertanyaan Anda dengan pengaturan saat ini.
sumber
Saya mengalami masalah serupa di simulator tetapi tidak pada perangkat dan bidang jalur pencarian header saya kosong (Sepertinya default). Tetapi mengubah Ruang Kerja tampaknya telah menyelesaikan masalah ini. Mungkin Anda dapat mencoba membuat Ruang Kerja baru, menambahkan proyek Anda ke dalamnya dan melihat apakah itu membantu. Sekarang saya sedang menyelidiki mengapa.
sumber
Saya mendapatkan kesalahan "file tidak ditemukan" ini untuk satu file .h tertentu dalam proyek saya. Saya menyelesaikan masalah dengan menghapus file .h itu dari proyek (memilih "Hapus referensi") dan menambahkannya kembali.
sumber
Menambahkan lebih banyak varian: Saya memiliki dua contoh
foo.m
dalamCompile Source
fase membangun, yang beberapa penyebab mengapa "Header tidak ditemukan" untukfoo.h
.sumber
Kesempatan lain:
Dalam proyek ruang kerja: perhatikan di Target untuk bagian Build Phases. Seperti yang dikatakan banyak manual, Anda perlu memiliki Fase Pembuatan File Salin untuk menyalin semua header Anda ke tempat lain, karena Kerangka Kerja iOS tidak dapat berisi file header untuk dibagikan (ini kasus saya).
Pilih untuk opsi Salin File sebagai Tujuan "Direktori Produk". Atau direktori lain yang Anda sukai tempat header akan berada.
Itu berhasil untuk saya. Mungkin build untuk direktori Archive (atau Release) sangat berbeda dari yang diharapkan dalam build untuk Debug.
Juga periksa di pengaturan ruang kerja Anda direktori build Anda.
XD
sumber
Bagi saya, masalah ini terjadi setelah saya menambahkan file baru ke proyek; sebuah .m kosong dan .h diturunkan dari NSObject. Inilah cara saya menyelesaikannya:
Saya kemudian menambahkannya kembali setelah itu dan itu juga berhasil.
Pasti bug di xCode ...
sumber