향상된 지식. Linux의 ld와 ldd를 함께 사용하면 런타임에 라이브러리 파일을 로드하지 못한 이유를 분석하는 데 도움이 될 수 있습니다.

PHPz
풀어 주다: 2024-02-20 08:36:03
앞으로
1119명이 탐색했습니다.

향상된 지식. Linux의 ld와 ldd를 함께 사용하면 런타임에 라이브러리 파일을 로드하지 못한 이유를 분석하는 데 도움이 될 수 있습니다.

일반적으로 개발자와 운영 및 유지 관리 담당자는 소프트웨어를 실행할 때 종속 라이브러리를 찾을 수 없는 문제를 처리할 때 strace, gdb 등과 같은 일부 도구를 사용하여 시작 로딩 프로세스를 추적할 수 있습니다. 또한 ld 및 ldd 명령을 사용하면 종속 라이브러리의 상황을 분석하여 문제를 더 빠르게 해결할 수도 있습니다. 이러한 도구는 누락된 종속성 라이브러리를 찾는 데 도움이 되며 사용자가 소프트웨어 런타임 문제를 해결하기 위해 적절한 조치를 취하도록 안내할 수 있습니다.

여기에서는 동적 라이브러리 파일 libmpi_usempif80.so와 문제의 원인으로 의존하는 다른 동적 라이브러리를 분석합니다.

먼저 mpi_usempif80 라이브러리가 의존하는 다른 라이브러리를 분석하는 데 ld 명령이 어떻게 도움이 될 수 있는지 소개하겠습니다. mpi_usempif80 라이브러리가 로드되면 현재 시스템에서 이러한 라이브러리가 검색되는 경로는 무엇입니까?

#ld -lmpi_usempif08 –verbose

으아악

위 정보는 매우 길고 귀중한 정보가 많이 포함되어 있습니다. 핵심 부분만 보고 싶으시면 핵심 내용을 유지하고 출력 정보의 요약 버전을 제시하겠습니다.

#ld -lmpi_usempif08 –verbose

으아악

또한 grep을 사용하여 mpi_usempif08에서 실제로 찾은 라이브러리에 대한 정보만 표시하도록 필터링할 수 있습니다.

#ld -lmpi_usempif08 –verbose grep 발견

으아악

그리고 ldd는 ld와 다릅니다. ldd는 Linux 런타임 라이브러리의 종속성을 분석하고, ld는 C/C++/Fortran 및 기타 언어 코드에서 실행 파일을 생성하는 연결 단계에서 자주 사용되는 실행 파일 링커입니다.

동일한 동적 라이브러리가 의존하는 다른 라이브러리를 분석하기 위해 ldd를 사용하는 방법을 살펴보겠습니다.

#ldd/usr/lib/x86_64-linux-gnu/libmpi_usempif08.so.40.30.0

으아악

여기의 순서는 ld -lmpi_usempif08 –verbose grep의 결과와 일치합니다.

위 내용은 향상된 지식. Linux의 ld와 ldd를 함께 사용하면 런타임에 라이브러리 파일을 로드하지 못한 이유를 분석하는 데 도움이 될 수 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:mryunwei.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿