본문 바로가기
서버/리눅스

[Linux] json-c 설치

by 코딩히어로 2022. 5. 16.
728x90

json-c 라이브러리를 사용하기 위해 리눅스에 설치를 진행하는 방법은

앞전에 cmake까지 설치가 완료되어 있어야 합니다

 

2022.05.13 - [서버/리눅스] - CentOS7 Cmake version update or install

 

CentOS7 Cmake version update or install

리눅스 json-c 라이브러리를 사용하기 위해 로직을 따라 하던 중 Cmake가 필요하여 yum install을 통해 설치했지만 다음과 같은 에러가 발생했습니다 CMake Error at CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):..

codinghero.tistory.com

 

먼저 라이브러리를 다운로드하도록 하겠습니다

git clone https://github.com/json-c/json-c.git

다음으로 build 폴더를 json-c 내부에 만들어주어 cmake를 진행합니다

cd json-c
mkdir build
cd build
cmake ..

위에 cmake가 잘 설치되어 있다면 쭉 진행됩니다

만약 에러가 발생하시면 위에 cmake version글을 참고하세요

make
make test

cmake가 완료되면 make와 make test를 통해 잘 진행됐는지 확인합니다

그다음으로는 install을 진행하시면 됩니다

make install
ldconfig

여기까지 설치하고 json-c 라이브러리를 사용하시면 됩니다

그런데 프로그램을 gcc로 컴파일 할 때 다음 에러가 발생합니다

error while loading shared libraries: libjson-c.so.5

원인은 libjson 파일을 참조하지 못하는 것인데

gcc 옵션에 다음항목을 추가해 주어야 합니다

-ljson-c -Wl,-R/usr/local/lib64

저는 mqtt_client.c 라는 이름으로 프로그램을 작성하여

Pub_Client 실행하도록 설정하였는데 다음과 같이 옵션을 설정했습니다 ( 기록용입니다 )

gcc -o Put_Client mqtt_client.c -I /usr/include/mysql -L /usr/lib64/mysql -lmysqlclient -lmosquitto -ljson-c -Wl,-R/usr/local/lib64

 

728x90
반응형

댓글