2012-08-24 12 views

Odpowiedz

23

Upewnij się, że wszystkie pliki z kodem źródłowym projektu mają rozszerzenie .mm i nie .m. Lub ustaw każdy typ pliku .m na Objective-C++.

+0

ale domyślnie Xcode utworzyć pliku .m i wszystkie moje pliki to .m –

+0

zmieniam rozszerzenie pliku .m na .mm, ale tylko te pliki, które zostały utworzone. tutaj jest wiele plików cocos2d znalezionych z.m –

1

zmiana plik rozszerzenie .mm ów to

0

Zmiana rozszerzenia w Xcode 4 nie będzie działać. Zamiast tego przejdź do budowania ustawień (zakładki) i zmień ustawienia biblioteki standardowej C++ na libC++ (LLVM ...) z domyślnego kompilatora.

Jeśli teraz ją utworzysz, pojawi się komunikat, że aplikacja nie jest zgodna z systemem iOS 5 lub nowszym. Przejdź do podsumowania (karta) i zmień cel wdrożenia na 5.0. Powinien teraz pomyślnie budować.

+0

To nie działa dla Xcode 5. – Dalmazio

0

Oto jak rozwiązałem problem. Oczyszczenie i odtworzenie projektu nie wydawało mi się dobrym pomysłem.

Istnieje kilka odpowiedzi w Internecie na ten problem, ale w każdym z nich nie pomógł mi rozwiązać problem. Jednym z nich jest na SO w

cassert file not found but i use Box2d template, a druga jest na forum cocos2d-iphone,

http://www.cocos2d-iphone.org/forums/topic/cannot-include-box2d-cassert-file-not-found-despite-every-file-being-mm/

Łącząc dwie propozycje rodzaj pracował dla mnie -

  1. nazwy wszystkich (nie pliki cocos2d lub box2d, tylko pliki projektów) od .m do .mm
  2. Upewnij się, że na każdym z plików po prawej stronie ne, opcja „Typ” jest ustawiony na „domyślne - obiektywne źródło C++”

był tam inny problem dla mnie specjalnie, nie może być to problem dla ciebie, używałem następujący podpis CCLabelTTF

CCLabelTTF *title = [CCLabelTTF labelWithString:@"Hello" dimensions:CGSizeMake(720.0f, 880.0f) alignment:UITextAlignmentLeft fontName:@"Arial" fontSize:34]; 

To jest przestarzałe i powoduje błędy w każdym miejscu. Jestem teraz używając następującej wersji nieznacznie zmodyfikowanej i błędów trwałych -

CCLabelTTF *title = [CCLabelTTF labelWithString:@"Hello" dimensions:CGSizeMake(720.0f, 880.0f) hAlignment:kCCTextAlignmentRight fontName:@"Arial" fontSize:34]; 

Moja najnowsza writeup tej poprawki można znaleźć na stronie - http://indiangamer.com/how-i-fixed-the-cocos2d-box2d-include-file-not-found-error/