wget-1.21.4 on CentOS 5.8
1. 준비작업
1.1. 다운로드
https://ftp.gnu.org/gnu/wget/ 에서 다운로드 한다.
wget ftp://ftp.gnu.org/gnu/wget/wget-1.21.4.tar.gz
gnu 패키지들은 ftp 다운로드 경로를 제공하므로, CentOS 순정 wget 으로 다운로드 받을 수 있다.
1.2. make, gcc 및 xz 설치
yum install make gcc xz -y
1.3. gnutls-3.7.10 혹은 openssl-1.1.1u (혹은 openssl-3.0.9 이나 openssl-3.1.1) 설치
openssl 혹은 gnutls 중 1개가 있으면 된다.
gnutls-3.7.10 혹은 openssl-1.1.1u (혹은 openssl-3.0.9 이나 openssl-3.1.1) 설치에 대해서는 필자가 작성한 다른 글을 참조한다.
2. 컴파일 및 설치
설치 디렉토리(--prefix
) 는 알아서 변경한다.
대부분의 Linux 배포판들은 /usr 이 설치 디렉토리(
--prefix
)이지만, 컴파일해서 설치하는 것들은 /usr/local 이나 /opt 아래에 두는 경우가 많다.
2.1. openssl-1.1.1u 과 함께 설치
$ mkdir -p logs/wget-1.21.4 $ tar xvfz wget-1.21.4.tar.gz > logs/wget-1.21.4/tar.`date +%Y%m%d.%H%M%S`.log 2>&1 $ cd wget-1.21.4 $ ./configure \ --prefix=/opt/wget-1.21.4 \ --with-libssl-prefix=/opt/openssl-1.1.1u \ --with-ssl=openssl > ../logs/wget-1.21.4/config.`date +%Y%m%d.%H%M%S`.log 2>&1 $ make > ../logs/wget-1.21.4/make.`date +%Y%m%d.%H%M%S`.log 2>&1 $ make install > ../logs/wget-1.21.4/install.`date +%Y%m%d.%H%M%S`.log 2>&1
2.2. gnutls-3.7.10 과 함께 설치
$ mkdir -p logs/wget-1.21.4 $ tar xvfz wget-1.21.4.tar.gz > logs/wget-1.21.4/tar.`date +%Y%m%d.%H%M%S`.log 2>&1 $ cd wget-1.21.4 $ ./configure \ --prefix=/opt/wget-1.21.4 \ --with-libgnutls-prefix=/opt/gnutls-3.7.10 \ --with-ssl=gnutls > ../logs/wget-1.21.4/config.`date +%Y%m%d.%H%M%S`.log 2>&1 $ make > ../logs/wget-1.21.4/make.`date +%Y%m%d.%H%M%S`.log 2>&1 $ make install > ../logs/wget-1.21.4/install.`date +%Y%m%d.%H%M%S`.log 2>&1
3. 적용
3.1. 현재 환경에 적용
현재 환경에서는 다음과 같이 적용한다.
$ export PATH=/opt/wget-1.21.4/bin:${PATH}
openssl-1.1.1u 과 함께 설치했다면, openssl-1.1.1u 의 LD_LIBRARY_PATH 도 설정해야 한다.
export LD_LIBRARY_PATH=/opt/openssl-1.1.1u/lib
3.2. 현재 로그인한 사용자에게 적용
현재 로그인한 사용자에게 적용하려면, ".bash_profile" 파일의 끝에 위의 내용을 추가한다.
3.3. 시스템 전체에 적용
3.3.1. 환경변수 변경
"/etc/bashrc" 파일의 끝에 위의 내용을 추가한다.
4. 문제해결
4.1. OPENSSL_init_ssl 등의 참조를 찾을 수 없다는 에러
make 할 때 발생한다.
상세한 로그는 생략한다.
--with-libssl-prefix
이 누락되었거나, openssl 경로가 잘못되었다.
4.2. libssl.so.1.1 파일이 없다는 에러
openssl-1.1.1u 과 함께 설치한 이후에 wget 을 실행할 때 발생한다.
/opt/wget-1.21.4/bin/wget: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
openssl-1.1.1u 의 LD_LIBRARY_PATH 도 설정해야 한다.
export LD_LIBRARY_PATH=/opt/openssl-1.1.1u/lib
4.3. HTTPS support not compiled in
https://logiciel.kr: HTTPS support not compiled in.
--with-ssl=no
옵션으로 컴파일한 경우에 발생한다.
gnutls-3.7.10 혹은 openssl-1.1.1u 과 함께 다시 설치해야 한다.