«Символ (ы) не найден для архитектуры i386» проблема с использованием ShareKit - PullRequest
4 голосов
/ 31 июля 2011

Я хочу использовать http://getsharekit.com framework для будущих проектов iOS.Поэтому я начал тестировать фреймворк.

Но я уже получаю следующую ошибку:

Undefined symbols for architecture i386:
"_OBJC_CLASS_$_SHKItem", referenced from:
  objc-class-ref in ShareKitTestAppDelegate.o
"_OBJC_CLASS_$_SHKActionSheet", referenced from:
  objc-class-ref in ShareKitTestAppDelegate.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status

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

#import "ShareKitTestAppDelegate.h"
#import "SHK.h"
#import "SHKItem.h"
#import "SHKActionSheet.h"
- (IBAction) letshare:(id)sender
{  
   // Create the item to share (in this example, a url)
   NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];
   SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];

   // Get the ShareKit action sheet
   SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];

   // Display the action sheet
   [self.window addSubview:actionSheet];
}

Я также включил папку заголовков ShareKit в параметры сборки HeaderSearchPath из-за поиска всех заголовков.

Но я не вижу здесь никакой ошибки или чего-то пропущенного.

Может ли кто-нибудь мне помочь?

С наилучшими пожеланиями,

Андреас

Ответы [ 2 ]

4 голосов
/ 18 апреля 2012

У меня была похожая проблема со следующей ошибкой компоновщика:

Неопределенные символы для архитектуры i386: "_OBJC_CLASS _ $ _ SHK"

Я решил ее, добавив SHK.m к скомпилированным источникам в Project.Настройки-> Цель-> Фазы сборки.Не уверен, почему SHK.m не был в списке скомпилированных источников, и он работал до дублирования цели.После дублирования я не смог связать ни одну из целей.

Добавление SHKItem.m или SHK.m к скомпилированным источникам может помочь вам, если их еще нет.

3 голосов
/ 08 августа 2011

Читать это http://getsharekit.com/install/.

Вы добавили рамки?

...