/ / Xcode kompilátor JIT ignoruje niektoré makrá preprocesora - objektív-c

Kompilátor Xcode JIT ignoruje niektoré makrá preprocesora - objekt-c

Tento problém ma bláznivý a takmer určite súvisí s nejakou chybou v Xcode, ale možno je tam nejaké riešenie, s ktorým nie som oboznámená, alebo čo som prehliadol. Tu je to:

Máme niekoľko cieľov budovania pre rôznektoré vytvárajú samostatné spustiteľné súbory s čiastočne prekrývajúcim sa kódom. Ak chcete vylúčiť určité bity kódu, ktoré by nemali ísť do jednej alebo druhej aplikácie, definujeme číslo #define makrá v príslušných súboroch .pch pre každý čiastkový projekt, napr. v main-app.pch

#ifndef MY_APP
#define MY_APP 1
#endif

a v sub-app.pch

#ifndef SUB_APP
#define SUB_APP 1
#endif

Potom v nejakom kóde, čo ste videli

- (void)doSomething
{
#ifdef MY_APP
NSLog(@"This is just an example");
#endif
}

Teraz je problém, že Xcode niekedy, tj len na niektorí strojov, neznamená zvýraznenie syntaxe alebo kódovaniedokončenie podmieneného zostavenia kódu. To znamená, že pre môjho kolegu to funguje úplne dobre, zatiaľ čo nikdy nevidím zvýraznenie syntaxe bez ohľadu na to, čo robím. Na záznam sme všetci na Xcode 4.5.2 Snažil som sa odstrániť odvodené dáta a re-indexovanie, zamieňanie poradia cieľov / schém a tiež dať makrá preprocesora v projekte av nastaveniach Target namiesto .pch súbor, ale zdá sa, že nič nepomôže. Akákoľvek myšlienka niekto, čo sa tu deje?

odpovede:

0 pre odpoveď č. 1

Po tom, čo som strávil väčšinu dňa na tejto nepríjemnostiproblém, našiel som "riešenie" druhov: použite Xcode pracovné priestory namiesto čiastkových projektov pre nezávislé spustiteľné súbory, ktoré všetky patria do rovnakého balíka aplikácií. Namiesto vytvárania závislostí na zostavovaní teraz pridávam dodatočné ciele v časti "Budovať" súčasnej schémy (výrobok->Upraviť schému ...).