2014-09-22 10 views
7

Mam mały plik nagłówka prefiksplik PrefixHeader.pch nie może znaleźć nagłówki

#ifndef UP_FOR_IT_PrefixHeader_pch 
#define UP_FOR_IT_PrefixHeader_pch 

#ifdef __OBJC__ 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
    #import <Parse/Parse.h> 
    #import "ABConstants.h" 
    #import "ABCache.h" 
    #endif 
#endif 

nie może znaleźć Parse.h. Połączyłem go z Link binary with libraries wszystko wydaje się właściwe, ale cokolwiek próbowałem, nie kompiluje. Próbowałem usunąć bibliotekę i zaimportować ponownie, ale nic się nie zmieniło. Usunięto indeksy z danych pochodnych, ale nadal nie ma pojęcia.

Co powinienem spróbować? Trwało to 2 godziny i nadal nie działa.

Xcode 6. IOS 8

+1

Mam ten sam problem, odkąd przeszedłem do XCode 6. Mój projekt został stworzony (i kompiluje się dobrze) z XCode 5, ale z jakiegoś powodu, z XCode 6, zewnętrzne biblioteki (dodane z Cocoapods) nie mogą być zaimportowane z pliku .pch (mówiąc "plik nie znaleziony"). Jeśli importuję je z zewnątrz (np. AppDelegate), działa dobrze. – ink

Odpowiedz

5

Wybierz projekt (o nazwie "Project" na przykład) i kliknij "ProjectTests" (w sekcji TARGETS). Następnie przejdź do opcji Buduj fazy> Połącz bibliotekę z bibliotekami i dodaj Parse.framework

+0

To rozwiązało mój problem, chociaż to Crashlytics zamiast Parse – kwahn

+0

również spowodowało, że pominąłem błąd kompilacji, ale okazało się, że muszę dodać wszystkie ramy, które są w głównym projekcie do celów testowych, zanim będzie można uruchomić nawet najprostszy test –

6

Goto Ustawienia Zbuduj>Jabłko LLVM 6.0 - językowe>Prefiks Header

Dodaj tutaj: $ (SRCROOT) /PrefixHeader.pch

enter image description here

Jeśli $ (SRCROOT) nie działa dla Ciebie, ustaw wartość „Prefiks Header” do nazwy pliku PCH, z nazwą projektu - to znaczy do projektu o nazwie „Test-Projekt” i plik PCH nazwie "Test-Project-Prefix.pch 'i dodać kompletny łańcuch' Test-projekt/Test-Project-Prefix.pch '

enter image description here

+3

już próbowałem, ale nie zadziałało. – sftsz

0

Na wszelki wypadek reszta odpowiedzi nie działa dla kogoś. Spróbuj zmienić w sekcji "Docelowe członkostwo", zakres swoich celów od publicznego do projektu. Mam nadzieję, że to pomaga.

0

Jeśli używasz cocoapods, możesz skorzystać z tej płatności pod numerem link. Mam ten problem, ale żadne z powyższych rozwiązań nie sprawdziło się u mnie.

Używam cocoapods, powodem jest to, że w Podfile I tylko połączone strąki do domyślnej target. Jeśli zamierzasz dodać kolejny, powinieneś dodać kolejną konfigurację celu w Podfile (target:'target' do). Zwykle nowy jest taki sam jak oryginalny, można użyć link_with, aby ułatwić sobie życie.

Ale życie nie zawsze jest takie łatwe. Wygląda na to, że link_with jest przestarzałe. Możesz wypisać to link.