2012-03-12 9 views
0

私は最終的に私のMonoTouchアプリケーション内で働いているサードパーティのライブラリを持っています。ただし、SDKを4.2に設定すると、シミュレータ用にのみコンパイルされます。 5.0に設定すると、リンカは失敗します。 は実際のデバイスで5.0にコンパイルされます。そのgcc_s.10.5は何を求めていますか、どこに配置する必要がありますか?MonoTouchサードパーティライブラリは、4.2ではなく5.0で動作します

Generated /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/main.m 
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -gdwarf-2 -fobjc-legacy-dispatch -fobjc-abi-version=2 -miphoneos-version-min=5.0 -arch i386 -std=c99 -I/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator.sdk/usr/include -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk -c /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/main.m -o /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/main.x86.o -DDEBUG 
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -gdwarf-2 -fobjc-legacy-dispatch -fobjc-abi-version=2 -miphoneos-version-min=5.0 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/main.x86.o -o /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/RetailStuff -framework CFNetwork -framework Foundation -framework UIKit -framework SystemConfiguration -framework CoreFoundation -framework CoreGraphics -framework AudioToolbox -framework AVFoundation -framework ExternalAccessory -framework QuartzCore -lz -u _mono_pmip -u _CreateZStream -u _CloseZStream -u _Flush -u _ReadZStream -u _WriteZStream -liconv -lmono-2.0 -lmonotouch -L/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib -u _catch_exception_raise -force_load /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/libGrabbaDriver.a 
Process exited with code 1, command: 
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -gdwarf-2 -fobjc-legacy-dispatch -fobjc-abi-version=2 -miphoneos-version-min=5.0 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/main.x86.o -o /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/RetailStuff -framework CFNetwork -framework Foundation -framework UIKit -framework SystemConfiguration -framework CoreFoundation -framework CoreGraphics -framework AudioToolbox -framework AVFoundation -framework ExternalAccessory -framework QuartzCore -lz -u _mono_pmip -u _CreateZStream -u _CloseZStream -u _Flush -u _ReadZStream -u _WriteZStream -liconv -lmono-2.0 -lmonotouch -L/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator.sdk/usr/lib -u _catch_exception_raise -force_load /var/folders/GG/GG6dZ9dzFX0vYZmJ1+6pQ++++TI/-Tmp-/tmp6a32a243.tmp/libGrabbaDriver.a 
ld: library not found for -lgcc_s.10.5 
collect2: ld returned 1 exit status 

mtouch exited with code 1 

答えて

0

回答の右側(新しい)バージョンにリンクされているように、ネイティブライブラリを再構築します。異なるプロジェクトでも同じ問題が発生しました。最後に、Snow LeopardからLionにアップグレードし、最新のxcodeにアップグレードしました。

1

システムが矛盾した状態にあるようです。

MonoTouchではlibgcc_sとリンクしようとしない、とbitofgooglingは、それがすべてでMonoTouchでの関連を見ていないことを示しています。

私は(Xcodeのは、いくつかの状況でそれを削除する可能性があるので、あなたは、あまりにも再びMonoTouchでのインストールが必要になる場合があります)、再びXcodeのをアンインストールしてから再インストールしようとするだろう:

2

libgcc_sは、あなたがしているlibGrabbaDriver.aそう依存関係ですMonoTouchプロジェクトとのリンク。

ld: library not found for -lgcc_s.10.5 

そのライブラリの名前がすなわち、それは私のiOS 5.1のシステムで同一ではありませんが、変更されている場合があります。

/Applications//Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/usr/lib/libgcc_s.1.dylib 

そこから私はあなたがする必要があると仮定します:

  • は、新しいライブラリ(は内部の変更はありません期待して)を使用してアプリケーションをリンクします。

  • は正しいアプローチにあった上で、それはlibgcc_s

関連する問題