matplotlib 버전 2.0.0을 설치하려고 합니다. 루트 액세스 권한이 없으므로 sudo/apt-get을 사용할 수 없습니다. matplotlib 설치를 시도했을 때 freetype 및 libpng에 대한 종속성이 표시되었습니다. 그래서 다음 단계를 실행했습니다.
wget http://prdownloads.sourceforge.net/libpng/libpng-1.6.34.tar.gz
tar -xzf libpng-1.6.34.tar.gz
cd libpng-1.6.34/
./configure --prefix=/home/$username$/
make
make check
make install
cd ..
wget http://download.savannah.gnu.org/releases/freetype/freetype-2.5.3.tar.gz
tar xzf freetype-2.5.3.tar.gz
cd freetype-2.5.3
./configure --prefix=/home/$username$ --without-png
make && make install
export PKG_CONFIG_PATH=/home/$username$/lib/pkgconfig
pip install matplotlib==2.0.0
완벽하게 작동했습니다. 하지만 그렇게 하면 import matplotlib.pyplot as plt
다음과 같은 오류가 발생합니다.
ImportError: libpng16.so.16: cannot open shared object file: No such file or directory
답변1
사용자의 홈 디렉토리에 설치된 프로그램은 일부 필수 라이브러리도 설치할 수 있습니다. 이러한 라이브러리가 어디에 있는지 프로그램 로더에 알리는 방법은 환경 변수 LD_LIBRARY_PATH를 사용하는 것입니다.
export LD_LIBRARY_PATH="/$HOME/<any other optional program directories>/lib"
이 행을 홈 디렉토리의 숨겨진 파일 .profile에 추가하여 각 로그인에 대해 이를 설정할 수 있습니다.
이러한 lib 경로가 두 개 이상인 경우 첫 번째 뒤에 콜론을 추가하고 다음 경로를 추가합니다.