2011-09-24 33 views
7

'da EXCLUDED_SOURCE_FILE_NAMES'i nasıl kullanırım? XCode'da EXCLUDED_SOURCE_FILE_NAMES adlı yapı kurulumuna ilişkin birkaç başvuru buldum. Aşağıdaki örnek, nasıl çalıştığını gösterir. Ancak XCode'da (4.02) bu seçeneği nasıl kullanacağımı anlayamıyorum.XCode 4 (iOS)

"EXCLUDED_SOURCE_FILE_NAMES [sdk = iPhoneOS *] [kemer = *]" = ...

gol bir veya daha fazla kaynak dosyaları hedef Simülatörü ve kaynağın farklı bir dizi olduğunda derlemek sahip olmaktır

hedef bir iOS cihazı olduğunda dosyalar derlenir.

Her bir hedef için dosyaların listesini xcode'a söylemem gerektiğini anlıyorum. Peki, bu ayarı kullanarak bunu nasıl uygularım? XCode'da nereye gidiyor? Bunun nasıl yapılacağına dair herhangi bir belge var mı?

Aynı şeyi statik bir lib ile de yapmalıyım. Spesifik olarak - projeme dahil etmek istediğim statik bir libro'm var, ancak lib sadece i386 değil destekliyor, bu yüzden simülatör için bina oluştururken, bu dosyanın bağlantılı olmasını engellemem gerekiyor!

Bu yapılabilir mi? Eğer bir yapı yapılandırmasından statik kütüphane kaldırmak isterseniz

cevap

9

Temelde EXCLUDED_SOURCE_FILE_NAMES sadece bu yapı yapılandırması

gelen bu dosyaları kaldıracak, o zaman bu gitmek için bir yoldur.

Bunu uygulamak için, Hedefinizin "Oluşturma Ayarları" na gidin, ardından "Oluşturma Ayarı Ekle" düğmesini tıklayın ve hedefinize EXCLUDED_SOURCE_FILE_NAMES yapılandırmasını ekleyin. Her yapı yapılandırması için dışlamak için hangi dosya adları belirtebilirsiniz Sonra

...

Senin durumunda

ve farklı dosyaların bir listesini söz beri, o zaman muhtemelen uygulama gruplarını 2 set oluşturmalı, sonra da dışlamak EXCLUDED_SOURCE_FILE_NAMES

içindeki paketler Yani simulator.bundle adlı bir paket ve release.bundle adında bir paket oluşturursanız Simulator.bundle dosyasını Release Configuration'da ve simulator yapılandırmasında release.bundle ...

+6

Ayrıca EXCLUDED_SOURCE_FILE_NAMES birkaç tane bekleyeceğini de eklerim ems, boşluklarla değil virgüllerle ayrılmalıdır. yani "pattern1 * pattern2" doğru, "pattern1 *, pattern2 *" ise işe yaramaz. –