0

サイクル ルートやフォトビューアーなどの機能を含む iPhone アプリケーションを作成しています。

これらの Cycle ルートでは Cloudmade API を使用し、PhotoViewer では Three20 の TTPhotoviewcontroller を使用しています。

これらのサイクルルートマップは完璧に機能しますが、エラーが発生した場合は何かをしなければならないと思います.

私が試したことと私が受けた問題について、ここで 2 つのケースについて説明します。

ケース 1: コンパイルがうまくいかず、次のエラーが表示されます。

duplicate symbol _aatan2 in /Users/wesleycoppens/Documents/MooiWest/libs/Proj4/Device/libProj4.a(aasincos.o) and /Users/wesleycoppens/Documents/MooiWest/libs/route-me/Device/libMapView.a(aasincos.o)
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1

フラグ -all_load をその他のリンカー フラグに追加しようとすると、このエラーが発生します。下の画像で、私のその他のリンカー フラグが現在どのように見えるかを参照してください。

画像のリンクを参照してください:http://i49.tinypic.com/262o7q1.png

ケース 2: コンパイルは正常に行われ、アプリはシミュレーターで完全に実行されますが、デバイスで SIGABRT を受信します。

この場合、その他のリンカー フラグの -all_load フラグを削除しました。現在、コンパイル エラーは発生していませんが、フォト ビューアー アプリにリンクしているテーブル行をタップすると SIGABRT が発生します。

フォトビューアーに正しくリンクしているかどうかわからないので、ここに他のフォトビューをプッシュする部分があります。

PhotoTest2Controller *photoViewController = [[PhotoTest2Controller alloc] init];
[self.navigationController pushViewController:photoViewController animated:YES];
[photoViewController release];

また、リンカーのフラグの別のスクリーンショットは、この場合にどのように定義されているかを示しています。

画像のリンクを参照してください: http://i47.tinypic.com/vhuv0z.png

4

1 に答える 1

1

最後に、これに対する解決策を見つけました。「-all_load」タグを使用する代わりに、重複エラーが発生するライブラリを除いて、必要なすべてのライブラリで「-force_load path_to_library/libXXX.a」を使用できます。それは私のために働いた!それが役に立てば幸い。

于 2010-08-11T10:31:07.590 に答える