2012-03-15 24 views
0

MAcPortを使用してopenCVをインストールしようとしましたが、何らかのエラーが発生しました。だから私はxcodeリンクライブラリに追加したフレームワークフォルダをダウンロードしました。今すぐコードを書いたら、このエラーを取得します。コンパイルエラーXcode 4.3.1 - > OpenCv Framework

ld: warning: ignoring file /Volumes/OpenCV2.0/OpenCV.framework/OpenCV, missing required architecture x86_64 in file 
Undefined symbols for architecture x86_64: 
    "_cvCreateCameraCapture", referenced from: 
     _main in main.o 
    "_cvQueryFrame", referenced from: 
     _main in main.o 
    "_cvGetSize", referenced from: 
     _main in main.o 
    "_cvCreateImage", referenced from: 
     _main in main.o 
    "_cvCvtColor", referenced from: 
     _main in main.o 
    "_cvShowImage", referenced from: 
     _main in main.o 
    "_cvWaitKey", referenced from: 
     _main in main.o 
    "_cvDestroyAllWindows", referenced from: 
     _main in main.o 
    "_cvReleaseImage", referenced from: 
     _main in main.o 
    "_cvCreateHist", referenced from: 
     _create_histogram_image in main.o 
    "_cvGetMinMaxHistValue", referenced from: 
     _create_histogram_image in main.o 
    "_cvConvertScale", referenced from: 
     _create_histogram_image in main.o 
    "_cvSet", referenced from: 
     _create_histogram_image in main.o 
    "_cvGetReal1D", referenced from: 
     _create_histogram_image in main.o 
    "_cvRectangle", referenced from: 
     _create_histogram_image in main.o 
    "_cvReleaseHist", referenced from: 
     _create_histogram_image in main.o 
    "_cvCalcArrHist", referenced from: 
     _cvCalcHist in main.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

誰も同じエラーがありましたか?手伝って頂けますか???ありがとう!!

+1

64ビットアプリケーションと32ビットフレームワークをリンクしようとしているようです。 –

+0

GCCのバージョンがlifesaykoの言われたように使用されていると思います –

答えて

1

GCC 4.2コンパイラを使用していますか? XCode4はデフォルトでLLVMを使用していますが、openCVはこれと互換性がありません(まだ)。 プロジェクトをクリックして確認するには、[ビルド設定]に移動し、[コンパイラ]を検索します。

0

私はあなたの代わりにこれを試してみてくださいお勧めします:直接

http://aptogo.co.uk/2011/09/face-tracking/

コピーフレームワークをして、ちょうどそれは非常に簡単に動作するはずあなたprefix.pchに

#ifdef __cplusplus 
#import <OpenCV/opencv2/opencv.hpp> 
#endif 

これを追加します。

2

私は、マック・ライオンのXcode 4.5のmacportsからopencv 2.4.2をインストールしたJackTurkyと同じ問題がありました。私はApple LLVMコンパイラ4.1からLLVM GCC 4.2にデフォルトのコンパイラを変更しようとしましたが、@autoreleasepoolとARCおよび一般的な目的のc構文に関して他の問題が現れました。幸いにも、私はもともと私の現在のセットアップで働いていたSnow LeopardでXcode 3.2を使ってビルドされたXcodeプロジェクトを持っていました。私は慎重に作業と壊れたプロジェクトのビルド設定を比較した。だから、Apple LLVMコンパイラ4.1を使い、設定をビルドする - > Apple LLVM compiler 4.1 language - > C++ Standard LibraryをlibC++(...)からlibstdC++(..)に変更しました。もう一度プロジェクトします。私のために働く、これが助けて欲しい。

+0

+1私はそのトピックについて最後の3日間から苦労しています。libC++をlibstdC++に変えて解決しました。THanks – QueueOverFlow

+0

HI Grrphon ... libC++をlibstdC++に変更する方法と変更するオプションはどこですか?@Gryphon – Babul

+0

@Babulは設定を行い、検索バーに標準ライブラリを入力し、C++標準ライブラリオプションを変更します。 libC++からlibstdc == – QueueOverFlow

関連する問題