리눅스(우분투) 프로그래밍 관련 질문 이니다 .
우분투 리눅스 8.04 버전을 사용하고 있고요
http://www.i-scream.org/libstatgrab의
libstatgrab 를 사용하여 프로그래밍을 하려고 하고있습니다.
이 라이브러리는 설치를 완료 하였습니다 ..
압축해제 후 ./configure >> make 하였습니다 .
예제프로그램이 있어서 실행을 시켜보니 실행이 아주 잘 되고 있습니다 ...
예제프로그램폴더에 오브젝트파일이랑 c 파일이랑 실행 파일까지 모두 있고요
제가 예제프로그램의 한 c 코드를 을 고대로 복사해서 다른 폴더에 넣어 두고서
새로 컴파일을 해보았는데요 라이브러리 함수에서 언디파인 레퍼런스가 나옵니다 ..
제 생각에는 헤더파일 지정시에
#include stdio.h
#include statgrab.h
#include stdlib.h
#include unistd.h
이 부분인데 헤더를 못찾는것 같기도 하고
Q1 ) libstatgrab 가 설치 되어있는지 / 어느곳에 설치되어 있는지 어떻게 확인해봐야 할까요
Q2 ) statgrab.h 를 복사해서 프로그램이 다른폴더에 넣고 "statgrab.h" 를 사용하니까
언디파인 레퍼런스가 몇 개 줄어들었습니다 ... 그런데 다시 지우고 다시 컴파일해보면
줄어든 언디파인 레퍼런스메세지가 줄어 들어 있습니다
Q3) 위의 방식으로 설치한 프로그램은 어떻게 해서 삭제를 해야 하나요 ??
test.o: In function `main':
test.c:(.text+0x9): undefined reference to `sg_init'
test.c:(.text+0xe): undefined reference to `sg_drop_privileges'
test.c:(.text+0x33): undefined reference to `sg_get_host_info'
이런식으로요
저 함수들이 선언된곳이 소스내에 없어서 실행이 안된다는 것 같은데 이것 저것 복잡하네요 ...;;
도움좀 부탁 드릴께요 참고로 파일소스 업로드 해둘께요 ;;
첨부 | 파일 크기 |
---|---|
![]() | 157.65 KB |
댓글 달기