Ошибка компоновщика iPhone (AudioStreamer) - PullRequest
1 голос
/ 12 августа 2010

Я использую Project Streaming Project Мэтта Галлахера .Я скачал код / ​​проект, и он прекрасно работает / компилируется / связывается.

Проблема заключается в том, что я пытаюсь интегрировать класс AudioStreamer в свой собственный проект.Я добавил все необходимые фреймворки и проверил настройки проекта, чтобы убедиться, что они максимально соответствуют проекту Мэтта.

Я еще не добавил ни одного кода Мэтта (кроме класса AudioStreamer).Все, что я сейчас делаю, - это определение этой функции:

- (void)createStreamer {
    streamer = [[AudioStreamer alloc] initWithURL:audiourl];
}

Если я закомментирую единственную строку в этой функции, проект скомпилируется / скомпонует нормально.Если я оставлю эту строку там, я получу эту ошибку (которая, если я правильно понимаю, является ошибкой компоновщика):

"_OBJC_CLASS_$_AudioStreamer", referenced from:
objc-class-ref-to-AudioStreamer in AudioViewController.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Я погуглил эту ошибку, и большинство людей получают ее, потому что забыли включить определенную структуру.У меня есть все рамки, которые мне нужны в моем проекте.

Кто-нибудь знает какие-либо другие причины, по которым может произойти эта ошибка?Есть ли какие-то настройки, которые я могу пропустить?

Большинство настроек проекта одинаковы, за исключением того, что для архитектуры сборки установлено значение arm6, arm7 в проекте Мэтта и i386 на моем.Я попытался скомпилировать и симулятор, и устройство, и получаю ту же ошибку.

Единственное, о чем я могу думать, это то, что проект Мэтта датирован 2009 годом (довольно старый), так что, возможно, что-то изменилось в конфигурации по умолчанию в новойxcodes?

Если кто-нибудь может дать какое-то понимание, я буду признателен.

Спасибо.

1 Ответ

2 голосов
/ 13 августа 2010

Похоже, вам нужно добавить AudioStreamer.m к вашей цели.

...