0

Three20が統合されたiOSアプリケーションを構築しています。私のアプリは、シミュレーターやiDevicesでも非常にうまく動作しています。ただし、テストのために顧客に送信するアドホックを構築しようとすると。非常に奇妙なエラーが発生しました

Ld /Users/kulnova/Library/Developer/Xcode/DerivedData/AppFantator-etlvrvoqzixizqbdblqhgefckwbb/ArchiveIntermediates/AppFantator/IntermediateBuildFilesPath/AppFantator.build/Adhoc-iphoneos/AppFantator.build/Objects-normal/armv6 / Desktop / AppFantator setenv IPHONEOS_DEPLOYMENT_TARGET 4.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr / local / bin:/ usr / X11 / bin:/ opt / local / bin:/ usr / local / git / bin "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6- dynamiclib-isysroot/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3。sdk -L / Users / kulnova / Library / Developer / Xcode / DerivedData / AppFantator-etlvrvoqzixizqbdblqhgefckwbb / ArchiveIntermediates / AppFantator / BuildProductsPath / Adhoc-iphoneos -L / Users / kulnova / Desktop / AppFantator -F / Users / Xcode / DerivedData / AppFantator-etlvrvoqzixizqbdblqhgefckwbb / ArchiveIntermediates / AppFantator / BuildProductsPath / Adhoc-iphoneos -filelist /Users/kulnova/Library/Developer/Xcode/DerivedData/AppFantator-etlvrvoqzixizqbd AppFantator.build / Objects-normal / armv6 / Fantator.LinkFileList -nostdlib -dead_strip -ObjC -all_load -miphoneos-version-min=4。0 -framework QuartzCore -lThree20 -lThree20Core -lThree20Network -lThree20Style -lThree20UI -lThree20UICommon -lThree20UINavigator -framework Foundation -framework UIKit -framework CoreGraphics -framework SystemConfiguration -framework Security -framework MessageUI -o / Users / kulnova / Library / Developer / X /AppFantator-etlvrvoqzixizqbdblqhgefckwbb/ArchiveIntermediates/AppFantator/IntermediateBuildFilesPath/AppFantator.build/Adhoc-iphoneos/AppFantator.build/Objects-normal/armv6/Fantator

ld:-lThree20のライブラリが見つかりませんcollect2:ldが1の終了ステータスを返しましたコマンド/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2が終了コード1で失敗しました

そのエラーは、AppleMatch-Oリンカーエラーとして表示されます

Three20をソースコードに統合するために、厳密に手動のプロセスに従ったと確信しています。「-ObjC」と「-all_load」はすべてリンカーに追加されます。

同じ問題が発生するかどうかはわかりませんが、その問題を解決するための手がかりはありますか?

読んでくださってありがとうございます。

4

2 に答える 2

0

アドホックターゲットにthree20を追加する必要があるために発生した可能性があります。ターゲット名を使用してPythonスクリプトを再実行してみてください。

python three20/src/scripts/ttmodule.py -p ProjectName/ProjectName.xcodeproj -c Adhoc Three20

ビルド検索ヘッダーがアドホックターゲットにすでに存在する場合は、ターゲット設定でビルドパスを引用してみてください。ターゲット名にスペースが含まれている場合、xcodeでthree20をビルドフォルダーにビルドする際に問題が発生する可能性があります。

"$(BUILT_PRODUCTS_DIR)/../three20"
"$(BUILT_PRODUCTS_DIR)/../../three20"
"../../libs/external/three20/Build/Products/three20"
于 2011-06-28T16:23:57.393 に答える
-1

自分で解決策を提供したいと思います。これは一種の抽象ですが、私が行ったことは、最初のポイントに戻ることです(Three20 Libの最初のものをアプリに追加する直前に、Gitから簡単に戻ります)。

以前にエラーが発生し、リンクされたフレームワークが赤で表示されていることに気づきませんでした(問題があると思いましたが、理由はわかりませんでした)。

周りに尋ねて、解決策はありません。このプロセスを何度も繰り返してみましたが、最終的に、すべてのフレームワークが赤色ではなく黒色になりました。そして、すべてがうまくいきます!Adhocをクライアントに配布してもらいました。(ここにスクリーンショットを投稿しようとしましたが、私は新しいユーザーであるため、投稿できません)

あなたが同じ状況にあり、それを解決する方法がわからない場合。同じ状況になるまで、何度も繰り返すことを強くお勧めします。

于 2011-06-29T08:05:24.500 に答える