옳은 질문인지 아닌지는 모르겠지만, .so Linux 공유 라이브러리에서 "objdump -d"를 가져 와서 해당 패키지와 비교해보십시오. 그 라이브러리 .text 섹션은 패키지에 쓰여진 전체 코드를 정확히 반영하지 않는 것 같습니다. 맞아? 그렇다면 ELF 파일의 .text 섹션에 어떤 .c 및 .h 파일이 직접 나타나는지 어떻게 알 수 있습니까?리눅스 동적 공유 라이브러리의 텍스트 섹션
1
A
답변
1
.text
어셈블리 지시어, 그것은 개발자가 다른 한편으로는 컴파일러에 의해 추가 된 뭔가 gcc
가 보통을 컴파일하기 전에 assembly
의 코드를 변환 될 가능성이있어, 쓴 가능성이다.
readelf -S a.out
그것은이 적어도, 유용한 무언가인지 아닌지 말하기 어렵다
objdump -d -j .text a.out
단지 .text
부분을 분해하는 데 사용할 수있는 컴파일 된 객체에서 사용할 수있는 부분을 나열하려면 귀하의 구체적인 경우에는,하지만 확실한 것은 1 가지입니다.이 도구를 사용하는 방법과 컴파일 된 객체를 디버깅하는 방법을 배우려면 최소한 타겟에 대해 assembly
을 먼저 배워야합니다.