У меня очень маленькая программа в XCode, отображающая только метку и изменяющая текст метки в методе viewWillAppear.Label.text должен поступать из библиотеки C ++ с такой функцией:
int getNumber(){
return 42;
}
Проблема в том, что включение класса с # import "TestLibMain.h" в мой *.mm (!) и использование функции с
TestLibMain *tlb = new TestLibMain();
int myInt = tlb->getNumber();
NSString *myString = [NSString stringWithFormat:@"%d",myInt];
не вызывает ошибку компилятора, но вызывает ошибку компоновщика:
неопределенные символы для архитектуры i386: "TestLibMain :: getNumber() ", ссылка из: - [tbViewController buttonPressed:] в tbViewController.o ld: символ (ы) не найден для архитектуры i386 clang: ошибка: команда компоновщика не выполнена с кодом выхода 1 (используйте -v для просмотра вызова)
У меня сложилось впечатление, что класс cpp не был скомпилирован.
Я много чего перепробовал, но где-то зависает.Это все в одном каталоге, я использую расширение .mm, все хорошо, но всегда эта ошибка компоновщика.Схожу с ума: -)
Mac OS X Lion, XCode 4.2
Есть идеи?