SORU
24 Mart 2011, PERŞEMBE


Böyle büyük mükafat ve iç içe geçmiş projeler başlık dosyaları bulunamadı -- 4

Sadece iyi Güncellemelerinden 3.2 altında çalışan böyle büyük mükafat 4 ve iç içe geçmiş projeler ile bir çok sorunlarının yaşıyorum. İşte çözemediğiniz bir çok temel

Kaynak ben bir kakao çerçeve gerektiren kakao bir çerçeve inşa ediyorum. Her zamanki adımları yapıyorum:

  • Ana çerçeve projeme gerekli çerçeve .xcodeproj Dosya sürükleyin
  • Benim ana çerçevesi altında HEDEFLER ^< MyFramework . Aşama ^ Oluşturun .Hedef Bağımlılıkları: İç içe projenin hedef ekleyin
  • İç içe çerçeve başlık dosyaları halka açık olduğundan emin olun
  • Böyle Büyük Mükafat Ayarları >Yerleri >Konum OluşturunSet varYer türetilmiş veri Ürün yeri (önerilir) oluşturmak
  • Ürünler yola çıkınher iki hedef de 1 ** ve bana söylemek için ayarlanmış olan/Debug DerivedData(veya Serbest) konumu
  • Her iki hedef için mimarlık ayarları aynıdır

Sonra [CMD] inşa etmek B çarptım ve iç içe geçmiş çerçeve başlık dosyaları bulmak olmadığını söylüyor. Ayarları kontrol ettiğimde,Kullanıcı Başlığı Arama Yollarıyolunu içerir/Debug DerivedDatabaşlık dosyaları ile iç içe çerçeve hedef var içerideBir//Sürümleri Başlıkları.

Burada kimseyi yanlış yapıyorum ne bir fikir oturuyorum?


Bu sorun için binaHata ayıklamabu değiştirdiğimdeKullanıcı Başlığı arama yolları${BUILT_PRODUCTS_DIR}/MyFramework.framework/Headers için. Ancak bu yapı zaman işe yaramıyorDağıtımçerçeveler daha sonra farklı bir alt biter Release ayarlarını kullanın


Benim geçici çözüm de bir tanımlamak içinDağıtımiç içe geçmiş projeler için yapılandırma. Bu şekilde başlıkları bulunur ve linker başarılı bir şekilde bağlantı kurabilirsiniz.

CEVAP
25 EYLÜL 2011, Pazar


Burada sentezlenen bilgim şimdiye kadar:

Tüm unutunkamuböyle büyük mükafat ile başlık şey, bir PİDE ve arşivleme uygulaması düzgün çalışmıyor. Bunun yerine, statik kütüphane başlık dosyaları varprojeseviye ve nerede bulacağımı uygulaması söyle.

  1. Tüm hedefler olduğundan emin yaparak, acını azaltıraynı adı yapılandırma oluşturmak(yani "açık" ve "Dağıtım" yapılandırma statik kitaplıkları). Add Ekle

  2. Ayarları yapılı, noktaBaşlık Arama Yolları#include <file.h> () veyaKullanıcı Başlığı Arama Yolları#include "file.h" kullanırsanız (statik kütüphane projesi dizine. Eğer statik kütüphane projesiiçinde uygulama dizinibunu kullanın:

    "$(PROJECT_DIR)" (özyinelemelietkin)

    Eğer içeren bir dizin varsa bir statik kütüphane projesi ve b) uygulaması, bu çalışması gerekir:

    "$(PROJECT_DIR)/.." (özyinelemelietkin)

  3. Eğer submodule derlenmiş kütüphaneleri varsa, senin ayarlayınKütüphane Arama Yoluiçin:

    "$(TARGET_BUILD_DIR)"

  4. Kullandığınız tüm statik kitaplığı projeleri olduğundan emin olunYükleme AtlayınYES ayarlayın.

  5. Yinehiçbir ortak başlık dosyaları(Aşama » Kopya Başlıkları) statik kitaplıkları herhangi bir yapı, aksi takdirde böyle büyük mükafat bir uygulama arşivlemek mümkün olmayacaktır.

  6. in this Tech Doc from Apple gösterildiği gibi statik kütüphaneler inşa etmek için ne zaman böyle büyük mükafat söylemek emin olun.


Eski Cevap:

Ben hala statik kitaplıkları ile bu sorun için gerçek bir çözüm bulamadım. Benim için neyin işe yaradığını

  • "Geçici" statik kütüphane için Yapılandırma . bir oluştur
  • Kullanıcı Başlığı uygulamasını Arayın ya da ikisini birlikte . $(BUILT_PRODUCTS_DIR) Ekle ^strong>özyinelemelikontrol) ->bu uygulamayı çalıştırırken kullanılır
  • Böyle büyük mükafat menüdeÜrünİçin İnşaArşivleme İçin İnşa

Bu kadar//Kurmak/Ürün/Add-iphoneos içinde DerivedData/ App bundle olarak biter, uygulama başlığı ve kendisini dosyaları oluşturur bulur, çalışır. these simple instructions (ölü link) testflightapp.com aşağıdaki IPA, bu Uygulama paketi ve çevresine gönderebilirim. Sadece seçmek içinArşivböyle büyük mükafat uygulaması yeniden eğer onlar gerçekten Geçici-iphoneos yapı dizin varsa bile headers bulamadık.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Cristina Landa

    Cristina Lan

    28 Ocak 2010
  • FASHTAG

    FASHTAG

    5 EYLÜL 2012
  • TWiT Netcast Network

    TWiT Netcast

    27 EKİM 2005