Aşağıdaki hataları alıyorum.
libxml / tree.h böyle bir dosya veya dizin yok
Projeme zaten ekledim libxml2.dylib
, ancak bu tür sorunlar yaşıyorum. Lütfen bana yardım et.
Aşağıdaki hataları alıyorum.
libxml / tree.h böyle bir dosya veya dizin yok
Projeme zaten ekledim libxml2.dylib
, ancak bu tür sorunlar yaşıyorum. Lütfen bana yardım et.
Yanıtlar:
Buradaki "Proje dosyanızı oluşturma" altındaki talimatları izleyin .
Proje dosyanızı oluşturma
Projenize libxml2.dylib eklemeniz gerekir (bunu Çerçeveler bölümüne koymayın). Mac'te, onu adresinde bulacaksınız
/usr/lib/libxml2.dylib
ve iPhone için/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk/usr/lib/libxml2.dylib
sürümü isteyeceksiniz .Libxml2 bir .dylib olduğu için (kolay bir .framework değil) yapmamız gereken bir şey daha var. Proje oluşturma ayarlarına gidin (Proje-> Proje Ayarlarını Düzenle-> Oluştur) ve "Arama Yolları" nı bulun. "Başlık Arama Yolları" nda aşağıdaki yolu ekleyin:
$(SDKROOT)/usr/include/libxml2
Ayrıca OP'nin cevabına bakın .
/usr/include
. Libxml2'yi yüklemeyi denemedim, bu yüzden varsayılan davranışı onaylayamıyorum. Ama evet, onu bu şekilde bağlamak çok daha iyi.
Libxml2 eklemek büyük, şişman, titiz bir baş belasıdır. Bunu yapacaksanız, projenizi oluşturmada çok ileri gitmeden önce yapın.
İki şekilde eklemeniz gerekir :
Hedefinize (projenize değil) tıklayın ve seçin Build Phases
.
Başlıklı üçgeni tıklayın Link Binary With Libraries
. +
Kitaplık eklemek için üzerine tıklayın .
Listenin en altına gidin ve seçin libxml2.dylib
. Bu, libxml2 kitaplığını projenize ekler.
Şimdi projenize onu nerede arayacağınızı üç kez daha söylemelisiniz .
Seçin Build Settings tab
.
Bölüme ilerleyin Linking
. Projelerinizin sütunlarının altındaki satıra çift tıklayın Other Linker Flags
. Tıklayın +
ve -lxml2
listeye ekleyin .
Hala fazla.
Aynı sekmede, Search Paths
bölüme ilerleyin .
Framework Search Paths
Satırdaki projeler sütununuzun altına ekleyin /usr/lib/libxml2.dylib
.
Gelen Header Search Paths
veUser Header Search Paths
satır ekleme $(SDKROOT)/usr/include/libxml2
.
Bu son iki durumda, yolun Hata Ayıklama ve Yayınlama'ya girildiğinden emin olun .
Product
Menü altında seçin Clean
.
Sonra, senin yerinde olsam (ve bununla yüzleşelim, muhtemelen öyleyim) Xcode'u bırakıp uzaklaşırdım. Geri dönüp fırlattığınızda, gitmekte iyi olmalısınız.
opening import file 'Swift.swift': Not a directory
bunu Xcode 5'te yaptıktan sonra
1) "libxml2.dylib" kitaplığını projemin HEDEFİNE ekle (Derleme Aşamaları -> Kitaplıklarla İkili Bağla)
2) HEDEF’teki Başlık Arama Yollarına "$ (SDKROOT) / usr / include / libxml2" ekleyin (Derleme Ayarları -> Başlık Arama Yolları)
Bundan sonra, hedef başarıyla inşa edilmelidir.
Ayrıca /usr/include/libxml2
dahil etme yolunuza eklemeniz gerekir .
@Matt Ball bağlantısını oluşturun,
Aşağıdakileri bana yardımcı buldum.
Projenize libxml2.dylib eklemeniz gerekir (bunu Çerçeveler bölümüne koymayın). Mac'te, onu adresinde bulacaksınız /usr/lib/libxml2.dylib
ve iPhone için /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/usr/lib/libxml2.dylib
sürümü isteyeceksiniz .
Libxml2 bir .dylib olduğu için (kolay bir .framework değil) yapmamız gereken bir şey daha var. Proje oluşturma ayarlarına ( Project->Edit Project Settings->Build
) gidin ve " Search Paths
" öğesini bulun . "Başlık Arama Yolları" na Mac’te aşağıdaki yolu ekleyin:
/usr/include/libxml2
Ray Wenderlich'in bu sorunu çözen gdata kullanımı hakkında bir blog yazısı var. Temel olarak şu basit adımlar:
XCode'da Proje \ Proje Ayarlarını Düzenle'ye tıklayın ve "Tüm Yapılandırmalar" ın işaretlendiğinden emin olun.
Arama Yolları \ Başlık Arama Yolları ayarını bulun ve listeye / usr / include / libxml2 ekleyin.
Son olarak, Linking \ Other Linker Flags bölümünü bulun ve listeye -lxml2 ekleyin.
orijinal gönderi: gdataxml ile xml belgelerini okuyun ve yazın
Aynı şeyi buldum, en son Xcode (4.3.x) için $ (SDKROOT) / usr / include / libxml2 eklemek zorunda kaldım. AYRICA, saatlerce etrafta dolaşmamı sağlayan şey, "PROJE" yerine "HEDEF" i değiştiriyor olmamdı (Xcode'un yeni kullanıcı arabirimi o kadar karmaşık ki, bunu gözden kaçırmak kolay). PROJEYİ değiştirmeniz gerekiyor!
Başka bir çözüm. başlık arama yolundaki vb. tüm adımları uygulayın ve Proje ayarlarında projede seçtiğiniz yapılandırmanın doğru olduğundan emin olun. Proje derleme ayarlarına çift tıkladığınızda, Dağıtım ayarlarında değişiyor olabilirsiniz, ancak "Hata Ayıklama" ayarlarında başlık arama yolu eklemeye çalışıyorsunuz. Bu yüzden doğru ayarlarda olduğunuzdan emin olun. veya tüm ayarları seçin
Mavericks'ten (OS X 10.9) itibaren / usr / include dizini gitmiştir . Siz dahil etme dizinini çözene kadar uygulama derlenmeyeceğinden, buradaki yanıtların yarısı geçersizdir.
Aşağıdaki komutu kullanarak terminalde MacOSX SDK'ya sembolik bir bağlantı oluşturma sorununu çözdüm:
sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include /usr/include
Uygulama şimdi yeniden derleniyor.
Mountain Lion'da ben de aynı sorunla karşılaşıyordum, bu sorun /usr/include/libxml2
"özyinelemeli" bayraklı yolları dahil ederek çözüldü , yukarıdakilerin tümü verimli değilse bunu kullanın.
Snow Leopard ve XCode 3.2'ye yükselttikten sonra bir projeyi (Leopard üzerinde XCode 3.something üzerinde geliştirilen) yeniden açtığımda bu sorunu yaşadım. Yeterince meraklıydı, yalnızca bazı yapı türlerini etkiledi (emülatör yapıları iyi gitti, aygıtlar bana hatayı verdi). Ve / usr / include dizininde libxml2 var ve gerçekten libxml / tree.h içeriyor.
Sihirli "Temizle" bile işe yaramadı, ancak "XCode" menüsünün altındaki "Önbellekleri Boşalt ..." (Apple logosu ile Dosya arasında) hile yaptı (bu menü önceki sürümlerde miydi?). Nedeni beni yener, ancak temizlemeden sonra libxml / tree.h ile ilgili başka şikayet olmadı
Lütfen aşağıdaki adımları izleyin
Libxml2 libxml2.dylib eklenmesi mac makinenizde /usr/lib/libxml2.dylib adresinde bulunabilir.
"Başlık Arama Yollarını" değiştirin
[Proje Adı] ' nı tıklayın (sol panelde) -> Proje -> Yapı Ayarları -> Tümünü Seç (varsayılan
Temel'dir) Arama kutusuna Başlık Arama Yollarını yazın Üstbilgi Arama Yollarına
çift tıklayın -> + - > "$ (SDKROOT) / usr / include / libxml2"
"Diğer Bağlayıcı Bayrakları" na -lxml2 ekleyin . "Diğer Bağlayıcı Bayrakları" nı arayın, 2. adımda
"Diğer Bağlayıcı Bayrakları" satırına tıklayın. "+" İşaretini tıklayın ve listeye "-lxml2" ekleyin.
Proje tipinizi ARC olarak değiştirin -> Hayır yani Otomatik Referans Sayma Hayır olarak 2. adımdaki gibi ARC'de arama yapabilirsiniz.
Xcode 4.5 CW'nin çözümünü tamamen kullandım. Bunun tek istisnası $ (SDKROOT) / usr / include / libxml2'nin benim için çalışmaması ve Projeler Üstbilgi Arama Yollarıma ve Kullanıcı Başlığı Arama Yollarıma "$ (SDK_DIR)" / usr / include / libxml2'yi eklemem gerektiğidir. . Bu proje başarıyla kurulduktan sonra.
DÜZENLEME: Projemin içinde Google GData projem var (Projem olarak adlandırılır) (projem kullanır). GData, libxml gerektirir. Projem'i başarılı bir şekilde oluşturmak için, Projemin Başlık Arama Yollarına "$ (SDK_DIR)" / usr / include / libxml2 ekliyorum ve GData'nın Başlık Arama Yollarına eklemiyorum . MyProject'e eklemediysem, proje oluşturulmadı ).
Bu görsel öğreticiyi faydalı buldum .
Blockquote Xcode 4.3.x'e libxml2 ekleme
Libxml2 eklemek büyük, şişman, titiz bir baş belasıdır. Eğer bunu yapacaksanız, projenizi oluşturmada çok ileri gitmeden önce yapın.
Nasıl yapacağınız burada.
Hedef ayarları
Hedefinize (projenize değil) tıklayın ve "Aşamaları Oluştur" u seçin. "İkili Dosyayı Kitaplıklarla Bağla" başlıklı gösterme üçgenine tıklayın. Bir kitaplık eklemek için "+" işaretine tıklayın. Listenin en altına gidin ve "libxml2.dylib" i seçin. Bu, projenize libxml2 kitaplığını 2 ekler… ama bekleyin.
Proje ayarları
Şimdi projenize onu nerede arayacağınızı üç kez daha söylemelisiniz.
"Yapı Ayarları sekmesini" seçin. "Bağlantı" bölümüne ilerleyin. Projenizin sütunlarının altında "Diğer Bağlayıcı Bayrakları" satırına çift tıklayın. "+" İşaretini tıklayın ve listeye "-lxml2" ekleyin.
Hala fazla.
Aynı sekmede, "Arama Yolları" bölümüne gidin. Projenizin "Çerçeve Arama Yolları" satırındaki sütununun altına "/usr/lib/libxml2.dylib" ekleyin.
"Başlık Arama Yolları" VE "Kullanıcı Başlığı Arama Yolları" satırına "$ (SDKROOT) / usr / include / libxml2" ekleyin. Bu son iki durumda, yolun Hata Ayıklama VE Yayınlama'ya girildiğinden emin olun.
Sonra. "Ürün" Menüsü altında "Temizle" yi seçin.
Bu çalışıyor ve Xcode5 için de! Teşekkür ederim!
Libxml2.dylib'i çerçeveler klasörünün altına koymayın, kökün hemen altına koyun (Sol üst mavi simge)
Ardından Projeye tıklayın (ÜST Sol mavi simge), Yapı Ayarlarına gidin, arama kutusuna "Başlık Arama Yolları" yazın ve ardından bu "$ (SDKROOT) / usr / include / libxml2" öğesini ekleyin
Bu kod sorunumu çözer umarım bunu düzeltmenize yardımcı olur
@Aqib Mumtaz - Parris'in yukarıdaki "Xcode 4.3 / 5 / 6'ya libxml2 ekleniyor" başlıklı notundaki talimatları izleyerek çalıştırdım. Çerçeve Arama Yolu kullanma adımı çalışmaz ve derleyici şikayet eder. O adama büyük şükürler olsun!
Xcode 6.2b3 kullanıyorum
Kullandığınız Xcode sürümünden bağımsız olarak, buggy. Her zaman derleme hatalarının gerçek olduğunu varsaymayın. Üstbilgi arama yollarını takip etmediği ve açıkça listelenen içeriklerin bulunamadığı birçok kez vardır. Daha da kötüsü, ortaya çıkan hatalar sizi farklı yönlere yöneltme eğilimindedir, bu nedenle dikkat dağıtıcı şeylerle uğraşarak çok fazla zaman harcarsınız. Bu sözü edilen...
Tam olarak bununla başlayarak bebek adımlarını önerin ...:
Notlar:
Bu yardımcı olur umarım.
Gaziler için bir şey geliştiriyorsanız, bir iPhone / iPad veya Mac uygulaması deyin ve tıbbi kayıt sistemine SABUN tabanlı arayüzler olan "MDWS" veya "VIA" adlı bir şeye karşı çalışıyorsanız ... lütfen benimle iletişime geçin
1) Derleme Aşamalarına libxml dosyası ekledim. Bu bağlantıyı takip edin
2) eklenmiş Diğer Bağlayıcı Flags olarak -ObjC
(hem proje ve test proje hedefleri için)
3) kurulum Başlık Arama Yolu olarak "${SDKROOT}/usr/include/libxml2"
(her iki tarafında çift tırnak unutmayın) (hem proje ve test proje hedefleri için)
Bunlardan biri sorunu çözecek. Değilse, yukarıdakilerin üçünü de uygulamanız gerekir.
Yanlış ekledim, sonra sorunun ark desteklemediğini anladım, bu yüzden buradaki desteği kontrol edin, hayat kurtarıcı -> http://www.michaelbabiy.com/arc-compliant-gdataxml-library/