libz.so.1(ZLIB_1.2.9)에 대한 종속성을 해결해 보세요.

libz.so.1(ZLIB_1.2.9)에 대한 종속성을 해결해 보세요.

친구가 .에 의존하는 EPUB 변환기를 만들어줬는데 , 다운로드해서 컴파일했는데 lib64png16_16솔루션 으로 인식되지 않았습니다(그리고 make install에서도 넣지 않았습니다 ).lib64png16_16libz.so.1(ZLIB_1.2.9)(64bit)ZLIB_1.2.11/usr/lib64

누구든지 (a) x86_64/CentOS7용 RPM을 얻 libz.so.1(ZLIB_1.2.9)(64bit)거나 (b) 컴파일 방법을 알려줄 수 있습니까 libz.so.1(ZLIB_1.2.11)(64bit)? 어리석은 일이지만, 64비트 시스템에서 컴파일하면 64비트 버전이 나올 것이라고 생각했습니다.

PS, CentOS ZLIB 패키지는 1.2.7입니다. 버전 1.2.9 이상을 찾을 수 없습니다.

답변1

lib컴파일 및 빌드된 ZLIB_1.2.11디렉토리를 앞에 추가해야 합니다 your LD_LIBRARY_PATH.

예를 들어 다음과 같이 컴파일하고 빌드했습니다.

나는 이 디렉토리를 만들었습니다.

/opt/zlib/1.2.11

/opt/zlib/src

그런 다음 들어가서 다음을 수행합니다 /opt/zlib/src.

 wget https://github.com/madler/zlib/archive/v1.2.11.tar.gz

그런 다음 압축을 풀고 구성이 포함된 디렉터리로 이동한 후 다음을 실행했습니다.

./configure --prefix=/opt/zlib/1.2.11

make그런 다음 나는 달렸다 make install.

그러면 라이브러리가 다음 위치에 배치됩니다.

/opt/zlib/1.2.11/lib

그런 다음 이 명령을 실행하여 ZLIB_1.2.9사용 가능한 항목을 확인합니다.

strings -d /opt/zlib/1.2.11/lib/libz.so | grep ^ZLIB

마지막으로 다음을 실행했습니다.

export LD_LIBRARY_PATH=/opt/zlib/1.2.11/lib:/usr/lib64:$LD_LIBRARY_PATH

귀하의 경우에는 다음 명령을 실행합니다.

export LD_LIBRARY_PATH=/path/to/zlib/lib:/usr/lib64/:$LD_LIBRARY_PATH

당연히 /path/to/zlib/lib경로를 라이브러리 위치로 대체하게 됩니다 zlib 1.2.11.

관련 정보