2017-11-30 24 views
0

ポッド経由でMobileVLCKitをインストールする際の素早いプロジェクトでリンカーエラーが発生する。プロジェクトでポッド経由でMobileVLCKitをインストールしたときにリンカーエラーが表示される

Undefined symbols for architecture x86_64: 
    "_OBJC_CLASS_$_VLCMediaPlayer", referenced from: 
     objc-class-ref in StreamingController.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

私は、ポッドは、ビルド・フェーズではVlckit のインストール後、建築プロジェクトのエラーを解決するには、次の手順に

  1. をしました - >リンクバイナリ - >のlibstdC++ 6.tbd

  2. 前の手順の後にAppleリンカーエラーを解決するには BuildSettings - > 'EnableBitcode = No'

  3. ブリッジング・ヘッダファイルで、で#import <MobileVLCKit/MobileVLCKit.h>

を行う「BuildSettings - >はother_linker_flags」私は「ポッド」フォルダ内の「MobileVLCKit」フォルダを見ることができますがまた、このMobileVLCKitフレームワークは、表示されていない


EDIT

私はこのエラーを削除し、「MobileVLCKit」はこれらの手順を行うことによって発見されるように作ることができた:

Build_Settingsで
  1. - > Other_Linker_Flags、追加:-framework "MobileVLCKit"
  2. をBuild_Settingsで - > Other_Linker_Flags、追加します。-l "BZ2"
  3. をBuild_Settingsで - > Other_Linker_Flags、追加します。-l "のiconvを"

しかし、これらの修正により、他のリンカーエラーが、他の目的でアプリケーションで使用されるAVSLibraryフレームワークで使用される他のフレームワーク 'libavsobjc.stripped.a'から生成されました。

VlcとAVSLibraryの両方を共存させる必要があります。何か案は ?

答えて

0

私は同様の問題を抱えていました。これを解決するために多くの努力をしました。

  1. ダミーのXcodeプロジェクトを作成し、MobileVLCkitをココアポッドを使用してダウンロードします。
  2. ダウンロードした「MobileVLCKit.framework」ファイルをダミープロジェクトからプロジェクトのルートフォルダにコピーします。プロジェクトのターゲットのビルド設定へ
  3. 移動し、あなたの「ヘッダ検索パス」に以下の行を追加します(あまりにも引用符を追加) 「$(PROJECT_DIR)/MobileVLCKit.framework/Headers」 「$(BUILT_PRODUCTS_DIR)」
  4. プロジェクトのターゲットビルド設定で、フレームワーク検索パスに次の行を追加します(引用符も追加します) "$(SRCROOT)/ MobileVLCKit。フレームワーク」 "$(PROJECT_DIR)一般>リンクされたフレームワークとライブラリではBZ2 " -l "のiconv" -framework "MobileVLCKit"
  5. を" 他のリンカーのフラグで
  6. は -l次の行を追加します" を追加+アイコン のlibstdC++をクリックして次のライブラリ。6.tbd
  7. すべての最も重要なの
  8. は、次の行 の#import「MobileVLCKit/MobileVLCKit.h」
  9. を含むことにより、ブリッジング・HEADER.Hへの参照を追加しますVLCMediaPlayerDelegateをタイプしてテストし、自動完了かどうか確認してください。あなたが逃したものを見るためにあなたの踏み台を戻してください。

希望があれば。 私は以下のリンクでこれを解決できました。 出典:https://forum.videolan.org/viewtopic.php?f=32&t=137065

関連する問題