2016-12-26 22 views
0

Googleが提供するtesseractを使用しています。 thisチュートリアルの後、私は最終的に私のアプリを完成させました。しかし、私はそれを実行すると、私は未定義のシンボルの問題にぶつかる。これはエラーですTesseractを使用している場合のアーキテクチャx86_64の未定義のシンボル

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

この問題を解決するにはどうすればよいですか?私はオンラインで検索しようとしましたが、ソリューションのどれも私のために働いていません。私はポッドを再インストールして更新しようとしました。この実行後

sudo gem install cocoapods 

::私は彼のエラーを取得プロジェクトのやり直しを試みたとき、私は

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

はあなたには、いくつかの問題を抱えています。 –

+0

最近あなたのプロジェクトに加えた変更は何ですか? –

+0

Pods-tst-dummy.mが見つかりません。最近の変化はどういう意味ですか?私はちょうどそのウェブサイトの手順に従いました。 – Chandran

答えて

0

私はあなたがポッドバージョンをアップデートする必要があると思います。このエラー

clang: error: no such file or directory: '/Users/admin/Desktop/tst/Pods/Target Support Files/Pods-tst/Pods-tst-dummy.m' 
clang: error: no input files 

に直面した

pod update --verbose 
+0

申し訳ありませんがうまくいきません – Chandran

+0

発生します。 – Chandran

0

明らかに私はココアポッドを使用した後でもTesseractOCR.frameworkを個別に追加し、Bitcodeを無効にすることができます。これにより、エラーが防止されました。

-1

Tesseractは、現在のXcodeバージョンでlibstdC++。6.0.9.dylibが利用できない場合はlibstdC++。6.0.9.dylib(またはlibstdC++。6.0.9.tbd)とCoreImage.frameworkを必要とするため、両方をリンクする必要があります

[一般]タブで、[リンクされたフレームワークとライブラリ]までスクロールします。

enter image description here

ここで一つだけのファイルがあるはず:TesseractOCR.framework、先ほど追加しました。リストの下にある+ボタンをクリックします。 libstdC++。dylib(またはlibstdC++。6.0.9.tbd)とCoreImage.frameworkの両方を見つけてプロジェクトに追加します。ポッド-TST-dummy.mこのフォーストを確認してください。

enter image description here

関連する問題