it-swarm-ko.tech

ELF 섹션 및 기호의 크기를 분석하는 도구

ARM 용 GCC 컴파일러의 출력 파일을 분석하는 방법이 필요합니다. 나는 베어 메탈을 위해 컴파일하고 있으며 크기에 상당히 관심이 있습니다. arm-none-eabi-objdump 크로스 컴파일러가 제공하지만 출력을 파싱하는 것은이 작업을위한 도구가 있으면 열망하는 것이 아닙니다. 그러한 도구가 있다는 것을 알고 있습니까? 검색 결과가 없습니다.

한 가지 더, 내 코드의 모든 함수는 자체 섹션에 있습니다.

27
RushPL

nmsize을 사용하여 함수 및 ELF 섹션의 크기를 얻을 수 있습니다.

함수 (및 정적 저장 기간이있는 객체)의 크기를 얻으려면 :

$ nm --print-size --size-sort --radix=d tst.o

두 번째 열은 함수와 객체의 십진수로 크기를 보여줍니다.

섹션의 크기를 얻으려면

$ size -A -d tst.o

두 번째 열은 섹션의 크기를 10 진수로 표시합니다.

49
ouah

readelf 유틸리티는 다음과 같은 섹션 크기를 포함한 다양한 섹션 정보를 표시하는 데 편리합니다.

arm-none-eabi-readelf -e foo.o

런타임 메모리 풋 프린트에 관심이 있다면 'A'(할당) 플래그가 설정되지 않은 섹션은 무시해도됩니다.

8
Lance Richardson

puncoverobjdump 및 기타 gcc 도구를 사용하여 html 페이지를 생성하면 코드와 데이터 공간이 어디로 가는지 쉽게 찾아 볼 수 있습니다.

Gcc 도구의 텍스트 출력보다 훨씬 좋은 프런트 엔드입니다.

0
sarfata