3

iPhoneアプリでFastPDFKitを使用してPDFを表示しています。シミュレーターでプロジェクトを実行すると、正常に動作します。ただし、iPhoneでプロジェクトを実行すると、以下のエラーが発生します。

duplicate symbol _value_map in:
    /Users/alkandari/Desktop/iPhone Apps/MyTest002/MyTest002/FastPdfKit.embeddedframework/FastPdfKit.framework/FastPdfKit(FastPdfKit)
duplicate symbol _writeUnicodeToUTF8Buffer in:
    /Users/alkandari/Desktop/iPhone Apps/MyTest002/MyTest002/FastPdfKit.embeddedframework/FastPdfKit.framework/FastPdfKit(FastPdfKit)
ld: 871 duplicate symbols for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ld: 871 duplicate symbols for architecture armv7


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

なぜそれがこのように起こっているのか考えていますか?


デバッグおよびリリースセクションの構成にFastPDFFrameworkを追加すると、エラーが発生します。

4

6 に答える 6

5

ヘッダー/フレームワークの検索パスをいじったり、再構築したりした後でも、私が見つけた解決策は次のとおりです。

http://support.fastpdfkit.com/discussions/problems/443-i-am-unable-to-link-fastpdfkitembeddedframework

プロジェクトで-all_loadリンカーフラグを削除しましたが、正常にコンパイルされました。警告として、このフラグを削除することがプロジェクトに適切であることを確認してください。おそらくそこに置かれたのは理由があります

于 2013-08-09T14:30:55.493 に答える
2

FastPdfKitターゲットをクリーンアップして再コンパイルしてみてください。これにより、新しいフレームワークex-novoが生成され、それをプロジェクトに追加して、使用しているフレームワークを上書きできるようになります。FastPdfKitプロジェクトのルートディレクトリにある新しい.embeddedframeworkを取得できます。

これらの行は、以下のリンクから私を助けました。

http://support.fastpdfkit.com/discussions/problems/759-duplicate-symbols-for-architecture-armv7

于 2013-03-17T16:27:15.020 に答える
2

このエラーが頻繁に発生する別の理由は、.hではなく.mファイルを誤ってインポートしたことです。

それは私に起こった:)

リンク:https://stackoverflow.com/questions/12279622/duplicate-symbols-for-architecture-i386-clang

于 2014-09-11T16:46:08.340 に答える
1

同じことを行うには、ヘッダーファイルに#includeまたは#importディレクティブが多すぎます。ヘッダーで@classを使用するように移動し、.mファイルにのみインポート/インクルードします。

全体として、これらがどこにあるかを確認し、再評価する必要があります。

于 2013-03-17T12:23:19.020 に答える
0

私は私の解決策を追加します。あなたがreadmeに従うかのように、それはあなたに次のことをするように頼むでしょう:

Inherit the project options: select the Project an from info tab and configurations line choose **FastPdfKitFramework** from the drop down list;

FastPdfKitFrameworkターゲットをNoneに置き換えたところ、うまく機能するようになりました。

readmeファイルにあるので、プロジェクトに.aを追加することはありません。すべての統合を再開したくないので、再コンパイルしたものをダウンロードしても役に立ちません。誰かのお役に立てば幸いです。

于 2014-03-11T09:41:39.940 に答える
-2

リンカフラグを削除-all_loadsしてみましたが、プロジェクトで問題なく動作しました。

于 2015-11-26T11:22:57.283 に答える