顯示具有 OpenCV 標籤的文章。 顯示所有文章
顯示具有 OpenCV 標籤的文章。 顯示所有文章

2015年3月25日 星期三

用 pkg-config 查詢「設定 Eclipse 使用函式庫 (library)」所需的參數

之前寫過幾篇有關用 Eclipse 開發程式的文章,關於所使用的函式庫(Library)如何正確設定,使得 Eclipse 可以編譯程式、鏈結函數庫以產生『可執行』檔案(:參考篇末文章列表)。
  由於函式庫的發展也會加入新功能,安裝時也可能會因系統不同而放在不同目錄。每次版本有更新,可能就要找一次這些參數的正確設定值,也是一件麻煩的事。
  之前的發文中有一篇提到 Linux 的工具程式 pkg-config,剛好最近要使用新的函式庫開發程式,就對 pkg-config 這個程式深入研究一下。
  一般在使用 Eclipse 開發程式時,有幾個『專案屬性』的設定與函式庫的正確使用有極大關係。在『專案瀏覽器』選擇欲設定的專案,按【滑鼠右鍵】點選選單下方的《內容》,跳出『專案內容』的設定視窗。在左欄的點選《C/C++ Build》→《Setting》,接著在右方『Tool Settings』分頁下方,分別位於
  • 《GCC C Compiler》→《Includes》,在右欄上方的『Include paths (-I)』
  • 《GCC C Linker》→《Libraries》,在右欄上方的『Libraries (-l)』
  • 《GCC C Linker》→《Libraries》,在右欄下方的『Libraries search path (-L)』
這三個地方,其中
  • 第一個參數(-I)是「GCC 編譯器」的參數,指定程式中引用的「標頭檔」目錄。
  • 第二個參數(-l)是「GCC 鏈結器」的參數,指定所引用「函式庫」的所在目錄。
  • 第三個參數(-L)也是「GCC 鏈結器」的參數,指定搜尋所引用「函式庫」目錄的起點。

2012年9月5日 星期三

查詢 OpenCV 函式庫的 Link(鏈結)參數

在前文 " 在 Linux 中,用 Eclipse 開發 OpenCV 程式 " 和 " 在 Fedora 17 中,用 Eclipse 開發 OpenCV 程式 " 中,對「Link(鏈結)」參數如何得知,除了 Google 以外,應該有其它方法。

    Linux 有個程式 pkg-config 用來查詢已安裝的函式庫之資訊,用 pkg-config 查詢 OpenCV 的函式庫的命令為,
[SiB@Celeron-D ~]$ pkg-config --libs opencv
-lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_flann
上例是在 Fedora 17 的查詢情形,下例是在 Fedora 14 的查詢結果,
[SiB@Celeron-D ~]$ pkg-config --libs opencv
-lml -lcvaux -lhighgui -lcv -lcxcore
這些參數是使用 gcc 編譯、鏈結時,附加在後面的參數。包含『編譯』及『鏈結』兩個階段所用,參考之前的兩個發文,再加一些測試,應該就可以順利應用這幾個參數了。

註:不同版本的套件所提供的函式庫可能不一樣,所以不可沿用其它版本查詢的資訊。

已測試版本:

  • Fedora 14 + Eclipse 3.6.1 + OpenCV 2.1.0
  • Fedora 17 + Eclipse 4.2.0 + OpenCV 2.3.1

2012年9月3日 星期一

Fedora 17 中,用 Eclipse 開發 OpenCV 程式

前文件 " 在 Linux 中,用 Eclipse 開發 OpenCV 程式 " 中所載,在 Eclipse 設定 include 和 library 的方法,在 Fedora 17 中有些部份不再適用。除以下修改部分外,其餘不變,請參考前文。

設定 Link(鏈結)的參數

  • 從「選單」→「專案 (P)」點選「內容 (P)」,設定專案的內容。
  • 當跳出專案設定視窗後,
    • 從左欄的「C/C++ Build」點選「Settings」,接著再設定右欄 Settings 。
    • 在右欄中的「Configuration:」選 "[All Configurations]",使「除錯版」與「釋出版」有相同設定。
  • 設定 Link(鏈結)的參數,從「Tool Settings」→「GCC C Linker」點選「Libraries」,再按「Libraries (-l)」右方的 『+』圖示,
    • 加入 " opencv_core "、" opencv_imgproc "、" opencv_highgui " 三個(要分三次加入)。
按確定後,完成專案設定。

已測試版本:

  • Fedora: 17
  • Eclipse: 4.2.0
  • OpenCV: 2.3.1

2012年8月13日 星期一

在 Linux 中,用 Eclipse 開發 OpenCV 程式

在 Linux 中使用 OpenCV 這套函式庫時,通常查到的資料都是 gcc 的指令型式。對初學者而言,不容易除錯,也沒有熟悉的 GUI 介面。想用 Eclipse 來開發 OpenCV 的程式,卻屢試不成。其實,只要在開發專案的內容加上設定就可以了。