본문 바로가기
BackEnd

bundle install 시 "Cannot Load Such File" 에러 해결 방법

by E_van 2020. 12. 31.

Ruby 프로젝트에서 bundle install 명령을 실행할 때 다음과 같은 "Cannot Load Such File" 에러를 만날 수 있습니다:

LoadError: cannot load such file -- openssl

이 에러는 보통 OpenSSL 라이브러리와 Ruby 설치 간의 연결 문제로 인해 발생합니다.

이번 글에서는 RVM(Ruby Version Manager)을 사용하여 이 문제를 해결하는 방법을 단계별로 설명합니다.

---

1. 원인 분석

이 에러는 다음과 같은 이유로 발생합니다:

  • OpenSSL 라이브러리가 시스템에 없거나, 제대로 설치되지 않음.
  • Ruby 설치 시 OpenSSL 라이브러리를 인식하지 못함.

따라서 OpenSSL 패키지를 설치하고, Ruby를 올바르게 재설치해야 문제가 해결됩니다.

---

2. 해결 방법

 

2.1 OpenSSL 패키지 설치

먼저, OpenSSL 라이브러리를 설치합니다.

RVM을 사용하여 OpenSSL을 설치하려면 아래 명령어를 실행합니다:

rvm pkg install openssl

이 명령은 RVM의 pkg 명령어를 사용하여 OpenSSL 라이브러리를 설치합니다.

---

2.2 현재 사용 중인 Ruby 제거

 

문제를 해결하려면 기존 Ruby를 제거하고, OpenSSL과 함께 다시 설치해야 합니다.

다음 명령어를 사용하여 현재 사용 중인 Ruby 버전을 제거합니다:

rvm remove 2.2.3

 

주의:

위 명령에서 2.2.3은 사용 중인 Ruby 버전을 나타냅니다. 다른 버전을 사용 중이라면 해당 버전 번호를 입력하세요.

---

2.3 OpenSSL과 함께 Ruby 재설치

OpenSSL을 포함하여 Ruby를 다시 설치합니다.

다음 명령어를 실행하여 Ruby를 설치하세요:

rvm install 2.2.3 --with-openssl-dir=$HOME/.rvm/usr

위 명령어는 Ruby를 OpenSSL 라이브러리와 연결하여 설치합니다.

---

2.4 설치한 Ruby를 기본 설정으로 변경

Ruby 설치 후, 프로젝트에서 기본적으로 사용할 Ruby 버전을 설정합니다.

아래 명령어를 실행하여 Ruby를 기본 버전으로 설정하세요:

rvm use 2.2.3 --default

---

2.5 bundle install 다시 실행

 

이제 프로젝트 디렉토리로 이동하여 다시 bundle install 명령을 실행합니다:

bundle install

에러가 해결되고, 모든 gem이 정상적으로 설치될 것입니다.

---

3. 추가 팁

  • RVM 업데이트

RVM 자체가 오래된 경우, 아래 명령어를 사용하여 최신 버전으로 업데이트하세요:

rvm get stable
  • OpenSSL 설치 확인

OpenSSL 설치 여부를 확인하려면 다음 명령어를 실행하세요:

openssl version

OpenSSL이 제대로 설치되지 않았다면, 아래 명령어를 사용하여 직접 설치할 수도 있습니다:

sudo apt-get install openssl libssl-dev
  • Ruby 버전 관리

RVM을 사용하지 않고 다른 버전 관리 도구(예: rbenv)를 사용하는 경우, 해당 도구에 맞는 설정 방법을 참고하세요.

---

4. 결론

bundle install 실행 시 발생하는 "Cannot Load Such File" 에러는 OpenSSL 라이브러리와 Ruby 설치 간의 연결 문제로 인해 발생합니다.

위 내용처럼 OpenSSL을 설치하고 Ruby를 재설치하면 문제를 해결할 수 있습니다.