2009-08-08 26 views
6

Aktualizacja: Wydaje się, że ostatnia aktualizacja XCode mogły ulec zmianie tego makra można znaleźć na to pytanie & Odbierz uzyskać więcej informacji: Obtaining older SDKROOT behavior in XCodeŚcieżki wyszukiwania nagłówków w kodzie X - czy można ustawić makro lub zmienne, aby były one względem wersji SDK?


Sytuacja: używam libxml2 na projekcie iPhone i I dodano go jako względną do wersji SDK. Jednakże, aby faktycznie użyć go w projekcie, należy go dodać do ścieżek wyszukiwania nagłówka w ustawieniach projektu.

Chciałbym, aby była to agnostyka w wersji SDK, więc ścieżka wyszukiwania nagłówków powinna być również względna do wersji SDK, jednak nie ma wyraźnego sposobu na rozwinięcie zmiennej reprezentującej folder SDK.

Na przykład, tutaj jest rzeczywista ścieżka dosłowny:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/libxml2

Chciałbym być w stanie wyrazić

$ MAGICAL_BASE_SDK_VARIABLE/usr/include/libxml2

jest to coś, co może być dokonane przy użyciu XCode?

Odpowiedz

18

Dane, które wymyślę na godzinę po walce i tylko 3 minuty po opublikowaniu.

Makro używane w tej sytuacji to $ {SDKROOT}. Dlatego wszystko, co musisz zrobić, to dodać ścieżkę wyszukiwania nagłówka, taką jak: "$ {SDKROOT}/usr/include/libxml2", i odpowiednio się rozwiąże.

Zauważ, że kod nie działa jeszcze w pełni, ale jest jasne, że przynajmniej wybiera lokalizację plików nagłówkowych.