programing

정적 라이브러리의 내용

goodcopy 2022. 7. 2. 22:25
반응형

정적 라이브러리의 내용

정적 라이브러리가 있습니다.mystaticlib.a. 안에 있는 오브젝트 파일의 수 등 내용을 보고 싶습니다.

이거 gcc로 어떻게 해요?

gcc에서 사용ar -t.

-tgnu archiver(ar)의 옵션은 표준 출력에 아카이브 목차를 씁니다.파일 오퍼랜드에 의해 지정된 파일만 서면 목록에 포함해야 합니다.파일 오퍼랜드가 지정되지 않은 경우 아카이브 내의 모든 파일은 아카이브 순서에 포함되어야 합니다.

자세한 것은 이쪽.

를 사용하면, 컨텐츠(.o 파일)와 정의된 기호를 표시할 수 있습니다.nmC++ 코드가 포함되어 있는 경우는,-C옵션에서 기호 이름을 디멘글링합니다.

nm -C libschnoeck.a | less

Mac에서는, 간단하게

nm libschnoeck.a | less

거기에는 없다-Cnm의 Mac 버전은 nm 입니다.

이 문제에 걸려 넘어졌다.

7zip을 사용하여 아카이브(.a)를 열 수 있습니다.아카이브의 오브젝트 파일에도 사용할 수 있습니다.모든 종류의 콘텐츠를 나열하는 것.text, .bss, .data,등입니다.offset, length, type,...또한 16진 에디터나 메모장++를 사용하여 내용을 모두 언팩할 수 있습니다.이 테스트를 테스트한 결과GNUToolsARMEmbedded\2018-q4-major\bin\arm-none-eabi-툴 체인 및7Zip 16.04 (64-bit)

지금 막 알게 된 건 네가 이 모든 걸readelf -a정적 라이브러리에 있는 모든 개체 파일의 내용을 표시합니다.

다음과 같이 readelf 명령을 실행합니다.$ readelf -a mystaticlib.a.

언급URL : https://stackoverflow.com/questions/3757108/contents-of-a-static-library

반응형