2011-12-21 2 views
1
"_OBJC_CLASS_$_SBJSON", referenced from: 

Objc-class-ref in JparseViewController.o 

Symbol(s) not found for architecture i386 

Clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Ld /Users/mag1/Library/Developer/Xcode/DerivedData/Jparse-heknsvlbknssribatbwgkuefjoja/Build/Products/Debug-iphonesimulator/Jparse.app/Jparse_armv7 armv7 i386 
    cd "/Users/mag1/Documents/Xcode Projects/Jparse" 
    setenv MACOSX_DEPLOYMENT_TARGET 10.6 
    setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk -L/Users/mag1/Library/Developer/Xcode/DerivedData/Jparse-heknsvlbknssribatbwgkuefjoja/Build/Products/Debug-iphonesimulator -F/Users/mag1/Library/Developer/Xcode/DerivedData/Jparse-heknsvlbknssribatbwgkuefjoja/Build/Products/Debug-iphonesimulator -filelist /Users/mag1/Library/Developer/Xcode/DerivedData/Jparse-heknsvlbknssribatbwgkuefjoja/Build/Intermediates/Jparse.build/Debug-iphonesimulator/Jparse.build/Objects-armv7/i386/Jparse.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -Xlinker -no_implicit_dylibs -D__IPHONE_OS_VERSION_MIN_REQUIRED=50000 -framework UIKit -framework Foundation -framework CoreGraphics -o /Users/mag1/Library/Developer/Xcode/DerivedData/Jparse-heknsvlbknssribatbwgkuefjoja/Build/Products/Debug-iphonesimulator/Jparse.app/Jparse_armv7 

Undefined symbols for architecture i386: 
    "_OBJC_CLASS_$_SBJSON", referenced from: 
     objc-class-ref in JparseViewController.o 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Я получил файлы фреймворка JSON из загруженного примера. Примеры работают отлично, но мой проект показывает выше ошибки.Json in iOS5 с ошибкой

+0

эта проблема возникает, главным образом, когда ваш класс не копируется правильным способом. Затем удалите старый и снова скопируйте. – Ron

ответ

2

Symbol(s) not found for architecture i386

выше ошибка возникает в следующей ситуации:

  1. Вы пытаетесь запустить приложение в iPhone/IPad Simulator
  2. Библиотека была только построена, чтобы работать на физическом устройств и не поддерживает запуск в Simulator.

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

+0

Как добавить i386 в допустимые архитектуры библиотеки SBJSON? Я просто скопировал и вставил структуру JSON файлы только из другого примера .. это какая-то проблема? –

+1

@ darvidsOn Огромное спасибо .... Его немного сработало для меня. Проблема в том, что у меня не было обновленной структуры JSON с ARC. Но теперь я очистил свои проблемы. –

2

Вы не добавили файл SBJSON.m в свою цель. Проверьте панель свойств для этого файла, и должен быть установлен флажок, указывающий, для какой цели он назначен. Возможно, вы просто забыли копировать SBJSON.m в свой проект.

2

перейти к Projectapp ->Buildphases ->compileSources

здесь, чтобы добавить все .m файлы JSON с + значок. проблема будет решена.

Смежные вопросы