2009-10-29 13 views
26

Tworzę statyczną bibliotekę dla Mac OS X dla jednego z naszych klientów, a także małą aplikację liniową cmd do testowania statycznej biblioteki lib. Projekt linii cmd ma 2 dodatkowe ścieżki przeszukiwania biblioteki, co oznacza, że ​​łączyłem się z wersją Debugowania w trybie Release i prawie oszalałem, więc starałem się pozbyć tych dwóch ścieżek, ale nie mogłem znaleźć, gdzie zostały określone . Szukałem informacji o projekcie, ale okazało się, że zostały określone w informacji o celu.Xcode: ustawienia projektu a ustawienia docelowe

Nie rozumiem tego rozróżnienia ?! Dlaczego istnieją 2 zestawy ustawień, które są w zasadzie takie same ?! Czy ktoś może mnie oświecić?

Odpowiedz

39

Projekt może zawierać wiele celów. Na przykład aplikacja, którą piszę, ma cztery: samą aplikację, wtyczkę Quick Look, framework i pakiet zawierający funkcję specyficzną dla systemu Mac OS 10.6, którą można dynamicznie załadować.

Ustawienia projektu dotyczą każdego celu w projekcie. Każdy cel może następnie zastąpić indywidualne ustawienia, jeśli jest to konieczne - na przykład docelowy pakiet SDK dla mojego projektu ma wartość 10,5, ale pakiet docelowy o wielkości 10,6 ma docelowy zestaw SDK ustawiony na 10,6.

W niektórych przypadkach niektóre ustawienia nie mają sensu być w Ustawieniach projektu - jednym z nich, jak sądzę, są ścieżki wyszukiwania.

+0

Pytanie uzupełniające: Jak mam dołączyć bibliotekę statyczną do projektu aplikacji cmd line? Przeciągając i upuszczając na listę plików źródłowych? Lub z ustawień kompilacji? – vectorizor

+4

@Kenndac, czy możesz wyjaśnić, dlaczego "niektóre ustawienia nie mają sensu być w Ustawieniach projektu"? W każdym projekcie mam tylko jeden cel i nadal nie jestem pewien, jak ustawić ścieżki wyszukiwania. – topace

8

Często masz wiele celów w jednym projekcie - na przykład, możesz mieć projekt ramowy z celem do budowania jako dynamiczny pakiet ramek i cel do budowania statycznej biblioteki. Twoja aplikacja może mieć cel do zbudowania samej aplikacji oraz cel do zbudowania pomocniczego narzędzia wiersza polecenia, które trzeba zainstalować.

W miarę możliwości sugeruję zmianę ustawień na najwyższym poziomie (w ustawieniach projektu i jednoczesną zmianę konfiguracji debugowania &) i dostosowywanie ustawień docelowych tylko w razie potrzeby. Co więcej, przenieś jak najwięcej ustawień do plików xcconfig, co wydaje się znacznie bardziej wyraźnym sposobem określenia konfiguracji kompilacji.