linux에서 테스트 및 개발을 하다 보면 설치된 라이브러리 등의 정보를 알아야 할 때가 있습니다.
자주 쓰는 것이야 외우면 되지만, 모든 경로를 다 외울 수도 없고, 외울 필요도 없었습니다.
사용법을 간단히 보면 다음과 같습니다.
우선 pkg-config --list-all 를이용해 현재 등록된 리스트를 전부 볼수있습니다.
이름/버전등을 정확히 확인하는 용도로 좋습니다.
1. version info
$ pkg-config opencv --modversion
3.3.1
2. --libs , --cflags
라이브러리등이 설치될 때 한 곳에만 설치되는 게 아니라, /lib /usr/lib /usr/local/lib 등에 설치 되게 되는데..
경로 설정에 따른 에러로 인해 시간을 낭비하는 경우가 많습니다.
이런 경우 설치된 LIB의 정보 *.PC 파일을 확인하여 간단하게 출력해볼 수 있습니다.
$ pkg-config opencv --libs --cflags
-I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib -lopencv_dnn -lopencv_ml -lopencv_objdetect -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_imgproc -lopencv_flann -lopencv_core
3. 컴파일시 긴 경로를 적지 않고, 간단하게 옵션을 정리할 수 있습니다.
$ gcc -o test main.c `pkg-config --cflags --libs opencv`
4. 크로스 컴파일등을 진행할 때는 HOST PC 에있는 라이브러리를 이용하지 않을 수 있기 때문에
별도의 설정이 필요할수 있는데.. 이때는 pkg-config 의 경로를 크로스컴파일 하려는 위치로 변경하여
설정 진행할 수 있습니다.
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/~~~/pkgconfig"
혹시나 현재 export PKG_CONFIG_PATH 되어있는 설정을 확인 하고 싶으면 출력이 가능합니다.
$ echo $PKG_CONFIG_PATH
전체 pkg-config 를 모두 확인 할면 다음 명령어로 확인이 가능합니다.
$ locate pkgconfig
~~~~~
/usr/lib/pkgconfig
/usr/lib/pkgconfig/ibus-table.pc
/usr/lib/pkgconfig/libquvi-scripts.pc
/usr/lib/pkgconfig/log4cpp.pc
/usr/lib/pkgconfig/pm-utils.pc
~~~~~~(전체가 모두 나온다.)
'취미 > linux 기초' 카테고리의 다른 글
linux grep 문자열 검색 (0) | 2022.11.01 |
---|---|
linux WEBCAM 연결시 정보 확인법. (0) | 2022.10.27 |
Buildroot 에 Package 추가 (helloworld) (0) | 2022.10.24 |
Linux 에서 gcc-arm-linux-gnueabihf 설치 버전 지정 (0) | 2022.10.21 |
linux 파일 링크 만들기 (0) | 2022.10.21 |
댓글