0

XCode で自分の Cocoa プロジェクトにカスタム ライブラリを追加する際に問題があります。

使用しています: • OSX Lion 10.7.4 (11E53) • XCode 4.3.3 (4E3002) • OpenCV 2.4.1

これが私がしたことです:

  1. 次のコマンドを使用して、Homebrew を介してターミナルに OpenCV をインストールしました (12.6 分かかりました:P):

    $ brew install opencv

  2. XCode で新しい Cocoa プロジェクトを作成 (~/Documents/Objective-C/MyProject)

  3. コピーされた OpenCV ライブラリ:

    $ cp -R /usr/local/Cellar/opencv ~/Documents/MyProject/MyProject

  4. 私のXCodeプロジェクト設定で、次の場所に移動しました:Targets -> MyProject

  5. Linked Frameworks and Libraries セクションの + をクリック

  6. ポップアップ画面で、[その他を追加...] をクリックしました。</p>

  7. 私が選んだパスとして: ~/Documents/MyProject/MyProject/opencv

  8. タブをクリックしました:ビルド設定

  9. 入力した検索フィールドに:

    ヘッダー検索

  10. オプションを常にユーザーパスを検索するをYESに切り替えました

  11. ヘッダー検索パスの右側の空きスペースをダブルクリックして(+) を追加し、エントリを確認します。

    opencv/2.4.1/include

  12. 検索フィールドをクリアして次のように入力しました:

    その他のリンカー フラグ

  13. Other Linker Flagsの右側の空きスペースをダブルクリックして挿入します。

    -lopencv_core -lopencv_flann -lopencv_legacy -lopencv_lapack -lopencv_contrib

わかりました、これは私がオンラインの記事で読んだ準備でした. ここで AppDelegate.h を選択し、次のインクルードを追加しました (Cocoa/Cocoa.h の #import の前に):

#include <opencv2/opencv.hpp>

ここで問題です。XCodeコードセンスからこのエラーが発生します:

'opencv2/opencv.hpp' file not found

この時点で、これが機能しない理由がわかりません。経験豊富な XCode ユーザーが、これが機能しない理由を知っていることを願っています。

前もって感謝します!

4

2 に答える 2

0

すべてのステップを実行する必要はないと思います。プロジェクトで opncv を次のように設定しました。

  1. プロジェクトに opencv2.framework を追加します

  2. このコードを .pch ファイルに追加します

    #ifndef __cplusplus

    #include < opencv2/opencv.hpp>

    #endif

  3. 現在、メインステップはすべて無視され、問題が発生しています:opencvを使用するすべての.mファイルの拡張子を.mmに変更します

于 2013-12-12T08:48:09.030 に答える
0

あなたが書いたことは正しいように聞こえます。OpenCV Xcode プロジェクトの 1 つを確認したところ、すべてがほとんど同じように見えます。私がしなかった唯一のことは、ライブラリをプロジェクト フォルダーにコピーし (リンクしているだけです)、追加のリンカー フラグを追加することです。代わりに、必要なすべてのフレームワークを Xcode プロジェクトに追加していました。

理由はまだわかりませんが、現在のビルド アーキテクチャが 32 ビットに設定されている限り、あなたが説明している問題とまったく同じ問題が発生していました!!

スキームを「My Mac 64 Bit」に変更してみてください (これがデフォルトの名前です。変更したかどうかはわかりません)。もう一度ビルドしてみてください。


これは、私にとっては問題なく動作する「デモ」Xcode プロジェクトへのリンクです。

http://www.rapidshare.com/files/1391580878/Xcode_OpenCV_example.zip

お役に立てれば、

一番、

フロー

于 2012-06-19T21:39:10.437 に答える