강좌
클라우드/리눅스에 관한 강좌입니다.
프로그램 분류

컴파일시 사용되었던 라이브러리 확인하는 ldd

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

컴파일시 사용되었던 라이브러리 확인하는 ldd

 

 

 

 

 

리눅스에서 공유라이브러리파일의 확장자는 *.so입니다.

 

 

 

 

 여기서 so shared object 약어이며, *so형태로 파일들은 거의 대부분 라이브러리파일이라고 보면 됩니다.

 

 

 

 리눅스의 모든 실행파일들은 시스템에서 제공하고 있는 공유라이브러리들을 사용합니다.

 

 

 

 , 컴파일 되어 생성이 때와 생성된 후에 실행이 때에도 공유라이브러리는 필요합니다.

 

 

 

 ldd 컴파일시에 어떤 라이브러리들이 사용되었는가를 확인하기 위한 명령어입니다.

 

 

 

 , 실행파일을 생성하기 위하여 컴파일 과정에서 어떤 라이브러리들을 사용하였는가를 확인하여 실행파일을 분석하기 위한 도구로 사용되는 명령어입니다.

 

 

 

  주로 프로그래머들의 프로그램분석도구로 사용됩니다.

 

 

 

 

 

명령어위치 :  /usr/bin/ldd

 

사용형식   :  ldd [옵션] 컴파일된 실행파일

 

 

 

 

어떤 실행파일이 생성될 때에는 자체 라이브러리나 또는 시스템에서 제공하는 공유라이브러리를 사용하여 컴파일을 수행합니다.

 

 

 

 또한 실행파일이 컴파일 되어 실행될 때에도 공유라이브러리는 필요합니다.

 

 

 

 , ldd라는 것은 어떤 실행파일에게 필요한 공유라이브러리들이 어떤 것이 있는가를 확인하는 것입니다.

 

 

 

 그리고 ldd ldconfig라는 명령어와 반드시 함께 알아 두셔야 합니다.

 

 

 

  , ldd ldconfig 다음 사항에 대해서 알아 두어야 합니다.

 

 

 

 

 

             - /lib/ld.so : 런타임 링커/로더(run-time linker/loader)

 

 

- /etc/ld.so.conf : 라이브러리파일들의 위치가 지정된 파일

 

 

                    - /etc/ld.so.cache : 라이브러리들의 순서리스트를 저장하고 있는 파일

 

 

 

 

먼저,  ldd 버전을 확인하는 간단한 방법부터 소개해 드립니다.

 

 

 

  현재 리눅스 시스템에서 사용하는 ldd 버전을 확인하려면 아래의 예와 같이 “ldd  --version”이라고 하시면 됩니다.

 

 

 

 

 

아래의 버전 확인결과를 보시면 현재 시스템에서 사용하고 있는 ldd 버전과 개발환경에 대해서 있습니다.

 

 

 

 

 

[root@RockyLinux01 test]# ldd --version

ldd (GNU libc) 2.34

Copyright (C) 2021 Free Software Foundation, Inc.

이 프로그램은 자유 소프트웨어입니다. 복사조건은 소스를 참조하십시오.  상품성

이나 특정 목적에 대한 적합성을 비롯하여 어떠한 보증도 하지 않습니다.

만든 사람: Roland McGrath Ulrich Drepper.

[root@RockyLinux01 test]#

 

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,156 명
  • 현재 강좌수 :  36,510 개
  • 현재 접속자 :  250 명