[질문] 리눅스 실행 파일의 정보를 얻어오고 싶습니다.

blackrus의 이미지

예를 들어서

#include "MyTest.h"
 
int main(int argc, char* argv[])
{
  printf("Test");
  return 0;
}

#] gcc -o MyTest MyTest.cpp MyTest.h
#] ls

MyTest MyTest.h MyTest.cpp

가 있다면

MyTest 파일의 버전 정보를 얻고싶습니다..
간단한 API로 정보를 얻을 수 있는지 알아보았으나 검색능력이 부족한지
정보를 얻지못했고 ELF 포맷 까지 알아보다가 시간이 촉박한 상태이기에
이렇게 여러분들께 질문 드립니다...

감사합니다.

overcrash의 이미지

바이너리에서 어떠한 정보를 추출해 내기는 어려울듯 합니다...
소프트웨어 적으로 버전정보를 포함하고 출력하도록 하시는게 어떨까요?
예를들어
#define VERSION 1.3

-v 옵션
printf("version : %0.1f\n", VERSION);

이런식으로...

blackrus의 이미지

윈도우만 하다가 리눅스를하니 헤롱헤롱 합니다 ㅠㅠ..
암튼 리눅스에서 버전정보를 파일시스템에서 얻어올 수 없으면
그렇게 하는 수 밖에 없겠군요... 답변 감사드립니다!! (_ _)

blackrus의 이미지

좀더 찾아본 결과

http://studyfoss.egloos.com/5226996

모듈 버전관리에 대해서 알게 되었는데요 커널에 관한 내용이지만

일반 오브젝트 파일에도 version 정보를 관리 할 수 있는지 궁금합니다.

여러분 아시는대로 답변 주시면 감사하겠습니다