ltrace를 사용하려고했습니다. 프로그램에서 사용하는 library.so 파일을 프로파일 링하기 위해 다음 명령을 사용하려고했습니다. sampleapp
, ltrace -c -T --library=library.so --output=out.txt ./SampleApp
. 그러나 위의 오류를 보여줍니다. 그러나 library.so는 디버그 빌드입니다. 그래서 기호 표가 있어야합니다. 나는 objdump --source library.so | grep CreateSocket()
으로 그것을 확인하려고 노력했다. 그 CreateSocket() 함수를 사용하는 코드를 반환합니다. 즉, 기호 테이블이 들어 있습니다. 그 오류가 발생하는 이유보다?ltrace : "library.so"에서 .dynsym 또는 .dynstr을 찾을 수 없습니다.
관련 게시물 : measure CPU usage per second of a dynamically linked library 그것은 실행 SampleApp
이 생성 된 방법에 따라 달라집니다