2013-03-15 47 views
4

嗨,大家好我是OpenCV的新手。我花了大量的時間將其安裝在運行10.8.2的Macbook上,並且使用最新版本的CMake和OpenCV 2.4.4成功完成了這一工作。但是我找不到任何直接的方法來編譯opencv目錄中/ samples文件夾中包含的FaceTracker.cpp文件。我不太確定如何鏈接必要的庫來編譯和運行它。還嘗試打開包含在同一文件夾中的XCode proj來構建它,並且因爲無法找到任何OpenCV.frameworks而失敗。你們可以指導我如何編譯和運行正確的方向嗎?也許如何在XCode中使用opencv框架?在Mac OS X中編譯OpenCV示例10.8.2

我搜索的論壇上和谷歌,但沒有找到任何東西,類似於我的問題,我所發現的信息是過期或太混亂。

謝謝!

回答

6

下載OpenCV的2.4.4源代碼,裏面的根目錄中執行以下命令:

mkdir build 
cd build 
cmake -DBUILD_EXAMPLES=ON ../ 
make 
sudo make install 

如果不工作,並且假設你已經安裝在系統上的OpenCV,目錄跳轉到samples/MacOSX/FaceTracker和執行

g++ FaceTracker.cpp -o FaceTracker `pkg-config --cflags --libs opencv` -framework Cocoa 

上面的命令將編譯應用程序後,你編輯文件FaceTracker.cpp一第二替換所有它的#include指令通過以下內容:

#include <CoreFoundation/CoreFoundation.h> 
#include <cv.h> 
#include <highgui.h> 
#include <cassert> 
#include <iostream> 
+0

謝謝!我設法通過將庫添加到鏈接器標誌選項來使用XCode進行編譯。起初設置起來非常麻煩,但我認爲我現在明白了。 – 2013-03-18 21:22:06

0

的FaceTracker例子已經過時:OpenCV.framework沒有爲OpenCV的2.x.x系列不復存在。 這個樣本是在OpenCV 1.1時提出的。

當您打開Xcode項目時,轉到生成設置並搜索其他鏈接器標記選項。 您可以在此處添加所需的動態庫(-lopencv_legacy等,不帶dylib擴展名)。 您可能還修改鏈接器的搜索路徑選項,包括已安裝的OpenCV的目標(通常是/usr/local/bin)。