pkg-config

 protobuf 를 설치하고 샘플을 빌드하는데 pkg-config 이 제대로 셋팅되지 않았다라는 메시지가

계속 나타났다 -_- 이거 왜 이럴까 T.T
 관심이 별로 없어서 신경을 안쓰던 것인데, 빌드할 때, 해당 라이브러리의 경로,
include 의 위치 빌드시 필요한 cflags, libs 등에 대한 정보를 미리 설정해둔것이다.
샘플은 다음과 같다.
prefix=/nadia
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Protocol Buffers
Description: Google’s Data Interchange Format
Version: 2.3.0
Libs: -L${libdir} -lprotobuf  -pthread
Cflags: -I${includedir} -pthread
# Commented out because it crashes pkg-config *sigh*:
# Conflicts: protobuf-lite
이것의 장점은 빌드시에 실제 중요한 정보의 위치를 빌드 스크립트에서
    pkg-config --cflags protobuf         # print compiler flags
    pkg-config --libs protobuf           # print linker flags
    pkg-config --cflags --libs protobuf  # print both
이런 방법으로 얻어올 수 있다는 것이다. 빌드 시 실제 위치에 대한 정보를 알 필요없이
해당 정보만 셋팅해 주면 된다.