1

Я получаю эту ошибку компоновщика, которая не позволит мне скомпилировать. Это происходит только на симуляторе.

Ошибка компоновщика Xcode на iPhone-приложении (только на тренажере)

КЛЮЧЕВЫЕ ТОЧКИ:
- Случаются только в тренажере
- Подобно THIS question, но не нашли FRAMEWORK_SEARCH_PATHS в моем .pbxproj файл
- Хотя моя ОС 10.6.2, я должен был построить цель 1.5, чтобы избежать других ошибок компоновщика
- libxml2.dylib IS требуется и находится в моей группе Frameworks
- Другие цитируемые библиотеки, о которых я никогда не слышал.
- Попытка привлечь к себе других Либ в рамках, не решила.


Build SpaceTweet of project SpaceTweet with configuration Debug 

Ld build/Debug-iphonesimulator/SpaceTweet.app/SpaceTweet normal i386 
cd "/Users/Scott/Desktop/iPhone Dev/SpaceTweet(Experimental)" 
setenv MACOSX_DEPLOYMENT_TARGET 10.5 
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/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.1.3.sdk "-L/Users/Scott/Desktop/iPhone Dev/SpaceTweet(Experimental)/build/Debug-iphonesimulator" -L/Users/Scott/Desktop "-L/Users/Scott/Desktop/iPhone Dev/SpaceTweet(Experimental)/../../libYAJLIPhone-0" -L/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/lib -L/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.1.3.sdk/usr/lib -L/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/usr/lib "-F/Users/Scott/Desktop/iPhone Dev/SpaceTweet(Experimental)/build/Debug-iphonesimulator" -filelist "/Users/Scott/Desktop/iPhone Dev/SpaceTweet(Experimental)/build/SpaceTweet.build/Debug-iphonesimulator/SpaceTweet.build/Objects-normal/i386/SpaceTweet.LinkFileList" -mmacosx-version-min=10.5 -framework Foundation -framework UIKit -framework CoreGraphics -framework AVFoundation -framework MessageUI -lYAJLIPhone -lxml2 -o "/Users/Scott/Desktop/iPhone Dev/SpaceTweet(Experimental)/build/Debug-iphonesimulator/SpaceTweet.app/SpaceTweet" 

ld: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/lib/libxml2.dylib, missing required architecture i386 in file 
ld: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/lib/libSystem.dylib, missing required architecture i386 in file 
ld: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/lib/libobjc.A.dylib, missing required architecture i386 in file 
collect2: ld returned 1 exit status 
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1 



КЛЮЧ:
Опять же, мой вопрос очень похож на THIS SOLVED QUESTION за исключением того, что в моем случае я не нашел запись FRAMEWORK_SEARCH_PATHS в .pbxproj файл в моем проектном пакете и, следовательно, не мог решить, каким образом этот вопрос был решен.

ответ

12

Проблема заключается в следующем:

-L/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/lib 

Вот сообщая Simulator (i386) строить, чтобы использовать файлы из устройства (руки)/USR/Lib.

Найдите в своей цели, где/usr/lib (просто используйте поисковый пузырь на вкладке «Получить информацию/настройки параметров») и удалите его. Компилятор будет использовать правильную платформу usr/lib, если сначала не будет использовать неправильную.

+1

Человек, которого вы действительно мне помогли. Благодарю. – RexOnRoids

0

У меня с тобой случилось то же самое. Я удалил и добавил все мои фреймворки и по-прежнему имел ту же проблему. Чтобы избавиться от ошибки, я, наконец, должен был удалить путь, указывающий на поврежденную библиотеку, на пути поиска библиотек в настройках сборки.

2

У меня такая же проблема. И, оказывается, запускается мой код версии выпуска в среде отладки. Нажмите «Редактировать схему ...» и измените «Конфигурация сборки», чтобы решить проблему.

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