Friday, April 2, 2010

pkg-config的--libs和--cflags

給未來的裕翔

當我們在編譯程式的時候

如果會使用到額外的函式庫

那就需要引入額外的標頭檔

而在編譯的時候, 對於額外的函式庫和標頭檔位置都要指明

看是要自己記得位置或是利用 pkg-config

以OpenCV-2.0為例, 如果我要標頭檔位置:

pkg-config --cflags opencv

如果要知道函式庫位置:

pkg-config -libs opencv

不過因為OpenCv-2.0不是使用yum安裝

所以pkg-config會顯示找不到opencv.pc

並且建議對環境變數指明opencv.pc位置

PKG_CONFIG_PATH=/home/bob/Desktop/opencv-project/OpenCV-2.0.0/

實際上我是用PKG_CONFIG_PATH=$(dirname $(locate -r 0/opencv.pc$))

建議直接加在~/.bashrc

export PKG_CONFIG_PATH=/home/bob/Desktop/opencv-project/OpenCV-2.0.0/

此時可以使用pkg-config --libspkg-config --cflags

不過前提是已經make install

因為pkg-config參考的opencv.pc的內容

都是指向預設安裝目的地

No comments:

Post a Comment