[CMake] Could NOT find OpenSSL

IT/Programming/Solution/Tip 2015. 6. 11. 12:32

CMake를 사용할 때, OpenSSL이 설치가 되어있음에도 불구하고

 

Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES  OPENSSL_INCLUDE_DIR)

 

위와 같은 오류가 발생하는 경우가 있다. 에러메시지를 보면 OPENSSL_ROOT_DIR, OPENSSL_LIBRARIES, OPENSSL_INCLUDE_DIR 변수를 찾을 수 없다고 한다. cmake 를 실행할 때 해당 변수를 수동으로 설정하여 넘겨주면 된다.

 

-D 옵션을 사용하여 넘겨줄 수 있다.

 

이를테면 다음과 같다.

 

 cmake -D build=debug -D bit=64 -D OPENSSL_INCLUDE_DIR /usr/local/ssl/include/openssl/ -D OPENSSL_ROOT_DIR=/usr/local/ssl -D OPENSSL_LIBRARIES=/usr/local/ssl/lib/ CMakeLists.txt

 

물론 사용자가 어떻게 설치하였느냐에 따라 경로는 바뀔 수 있으므로, 본인이 OpenSSL을 설치하였는지를 다시 한 번 확인하고, 설치하였다면 pkg-config 또는 find 등을 사용하여 경로를 찾아보도록 하자.

 

* 패키지 설치로도 이 문제를 해결할 수 있다.

Ubuntu의 경우 : apt-get install libssl-dev

CentOS의 경우 : yum install openssl-devel

설정

트랙백

댓글