2010-08-12 14 views
1

J'utilise Audio Streaming Project de Matt Gallagher. J'ai téléchargé le code/projet et il fonctionne/compile/liens très bien.iPhone Linker Error (AudioStreamer)

Le problème est lorsque j'essaie d'intégrer la classe AudioStreamer dans mon propre projet. J'ai ajouté tous les cadres nécessaires et vérifié les paramètres du projet pour m'assurer qu'ils correspondent le plus possible au projet de Matt.

Je n'ai pas encore ajouté le code de Matt (sauf pour la classe AudioStreamer). Tout ce que je fais est maintenant pour la définition de cette fonction:

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

Si je commente la seule ligne dans cette fonction le projet compile/liens ténus. Si je laisse cette ligne là, je reçois cette erreur (qui, si je comprends bien est une erreur de liaison):

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

Je googlé cette erreur et la plupart des gens parce qu'ils ont oublié d'inclure un certain cadre. J'ai tous les cadres dont j'ai besoin dans mon projet.

Est-ce que quelqu'un connaît une autre raison pour laquelle cette erreur pourrait se produire? Y a-t-il un cadre que je pourrais négliger?

La plupart des paramètres du projet sont les mêmes, sauf que l'architecture de construction est définie sur arm6, arm7 dans le projet de Matt et i386 dans le mien. J'ai essayé de compiler pour le simulateur et l'appareil et j'ai la même erreur. La seule chose que je pourrais penser est que le projet de Matt est daté 2009 (assez vieux) alors peut-être quelque chose a changé dans la configuration par défaut dans les nouveaux xcodes?

Si quelqu'un peut donner un aperçu, je l'apprécierais.

Merci.

Répondre

2

Il semble que vous ayez besoin d'ajouter AudioStreamer.m à votre cible.

+0

Ouais c'est ça, je viens de le découvrir à travers un autre post. La clé pour trouver la réponse était la recherche de 'collect2: ld a renvoyé 1 statut de sortie' au lieu de la première ligne. Merci .. J'ai perdu tellement de temps là-dessus. Je ne sais pas pourquoi il n'a pas été défini par défaut depuis que j'ai créé cette classe, puis copié collé le code. – nebs