簡體   English   中英

使用Xcode為OS X Lion / Mountain Lion編譯OpenCV(2.3.1+)

[英]Compile OpenCV (2.3.1+) for OS X Lion / Mountain Lion with Xcode

任何人都可以為我提供一些如何使用Xcode在OS X Lion上編譯OpenCV 2.3.1的詳細指南嗎?

我對此感到生氣...我得到了源碼,使用cmake創建Xcode模板並嘗試構建它,但它失敗了大約200個錯誤。

在此先感謝,Dom

解答我的回答帖子。

詳細指南如何使用MacPorts在Xcode 4.2.1的OS X Lion(10.7.2)下啟動和運行OpenCV 2.3.1

編輯08/06/2012:這也適用於OpenCV 2.4.1。 只需確保您獲得最新版本的Xcode並安裝“命令行工具”(Xcode - >首選項 - >下載 - >命令行工具)。

編輯15/08/2012:使用Mountain Lion和當前版本的Xcode和OpenCV測試了所有內容...它正在運行:)而且您不必使用LLVM編譯器。

編輯16/10/204:在過去的一年里,我放棄了MacPorts並開始使用brew,這對我的目的更有效。

釀造指南

1.)在這里獲取當前版本的Brew。

2.)確保brew已經准備好了

brew doctor && brew update 

3.)安裝OpenCV(截至2014年7月20日v2.4.9)

brew install opencv

4.)啟動Xcode(截至2014年7月17日v6.0.1)並打開/創建您的項目

5.)選擇目標,轉到“常規”並點擊“鏈接的框架和庫”中的“+” - 按鈕

5.1。)點擊“添加其他”,點擊“/”,轉到“/ usr / local / lib”並添加你需要的任何libopencv _ **。dylib

6.)現在將“/ usr / local / include”添加到“Build Settings”下的“Header Search Paths”(目標仍然被選中)

7.)最后確保在.mm文件中包含OpenCV。

MacPorts指南(可能已過時)

1.)在此處獲取當前版本的MacPorts。 不要忘記將“/ opt / local /(s)bin”添加到您的環境路徑中

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

2.)保持您的MacPorts 2日期:

sudo port -v selfupdate

3.)安裝OpenCV 2.3.1(使用llvm-gcc構建)

sudo port install opencv configure.compiler=llvm-gcc-4.2

4.)啟動Xcode並創建項目

5.)選擇目標,轉到“摘要”並點擊“鏈接的框架和庫”中的“+” - 按鈕

5.1。)點擊“添加其他”,點擊“/”然后轉到“/ opt / local / lib”

5.2。)添加你需要的任何libopencv _ **。dylib

6.)現在將“/ opt / local / include /”添加到“Build Settings”下的“Header Search Paths”(目標仍然被選中)

7.)最后確保在.pch文件的開頭有以下幾行:

#ifdef __cplusplus
  #import "opencv2/opencv.hpp"
#endif

否則你會得到一些令人討厭的錯誤:

"Non-const static data member must be initialized out of line"
"Statement expression not allowed at file scope"

而已! 希望能幫助到你 :)

感謝Vachidrewer,我能夠在Mavericks上運行OpenCv。 我按照不同的順序做事,所以這是我的筆記。

  1. 如果未安裝,請安裝Macport並將其添加到路徑。 (我已經安裝了它)

  2. 使用Macports從命令行$ sudo port -v selfupdate更新自己

  3. 使用Macports從命令行安裝opencv及其依賴項。 $ sudo port install opencv

  4. 如果未安裝,請安裝xCode。 (我已經安裝了它)

  5. 使用xCode創建C ++命令行項目。

  6. 使用xCode通過在xCode IDE中運行它來驗證它創建的簡單hello world C ++程序是否有效。

  7. 將xCode創建的main.cpp文件從hello world示例修改為Vachidrewer的簡單opencv示例。

  8. 請注意,xCode editer報告它無法找到頭文件opencv頭文件。

  9. 將/ opt / local / include /添加到項目搜索路徑,並注意編輯器錯誤消失。

  10. 嘗試在xCode IDE中運行該程序,並注意它報告它找不到opencv庫。

  11. 將一個名為opencvfrqmework的組添加到項目中,並將/opt/local/lib/libopencv_core.dylib和/opt/local/lib/livopencv_highgui.dylib添加到該組。

  12. 使用xCode IDE運行項目,並注意到一個窗口彈出一半,然后是另一半。

隨着@moosgummi的小改動回答下面的步驟使用Mac OSX 10.7上的Xcode 4.6 ,下面包括TEST代碼。

安裝OpenCV:

此處獲取當前版本的MacPorts。

不要忘記將“/ opt / local /(s)bin”添加到您的環境路徑中

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

讓您的MacPorts保持2個日期:

sudo port -v selfupdate

使用mac端口安裝OpenCV

sudo port install opencv

配置Xcode以使用OpenCV

  1. 使用命令行實用程序/標准工具模板創建新的XCode項目。 將其命名並選擇C ++

  2. 選擇項目 - >編輯項目設置。 選擇“構建”選項卡。 將配置設置為所有配置

  3. 在Architectures部分中,雙擊Valid Architectures並刪除所有PPC體系結構(如果有)。

  4. 編譯器用於C / C ++ / Objective-C> Apple LLVM編譯器4.2語言“>”C ++標准庫“,並選擇”libstdc ++(GNU C ++標准庫)“

  5. 在“搜索路徑”部分中,將標題搜索路徑設置為/ opt / local / include /
    添加該搜索路徑時,請選擇非遞歸作為選項

  6. 關閉“項目信息”窗口

  7. 選擇Project - > New Group並創建一個名為OpenCV Frameworks的組在選擇新組的情況下,選擇Project - >將文件添加到'Your Project Name'

  8. 按“/”鍵進入“轉到文件夾”提示。 輸入/ opt / local / lib選擇libopencv_core.dylib,libopencv_highgui.dylib(您可能需要從此文件夾添加其他庫文件以運行其他代碼。)

  9. 取消選中“復制項目...”,然后單擊“添加”

測試代碼

將此代碼復制到main.cpp文件中。 它應該打開一個半陰影的小窗口。

#include <iostream>
#include <opencv2/opencv.hpp>

int main(int argc, char *argv[])
{
    // Open the file.

    IplImage *img = cvCreateImage( cvSize(100,200), IPL_DEPTH_8U, 3); //if (!img) {

    //    printf("Error: Couldn't open the image file.\n");
    //    return 1;
    //}

    // Display the image.
    cvNamedWindow("Image:", CV_WINDOW_AUTOSIZE);
    cvShowImage("Image:", img);

    // Wait for the user to press a key in the GUI window.
    cvWaitKey(0);
    // Free the resources.
    cvDestroyWindow("Image:");
    cvReleaseImage(&img);

    return 0;
}

您是否嘗試使用標准UNIX Makefile構建它?

請遵循本指南 ,看看是否有幫助。 如果您已經下載了源代碼,則可能不需要執行建議的svn checkout。 您可以從使用CMake開始構建第2部分。

希望有所幫助。

在得到很多錯誤(分段錯誤等)之后我終於開始工作了。 這是教程:

http://www.guidefreitas.com/installing-opencv-2-4-2-on-mac-osx-mountain-lion-with-python-support

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM