#include math.h 과 같이 수학 관련 함수를 사용하여 프로그램을 컴파일 할 때 다음과 같은 오류 메시지가 나타날 수 있습니다..
오류 출력 예
$ gcc -o test test.c
/tmp/test.o : 함수`xx '내 :
test.c :(. text + xx) :`pow'에 대한 정의되지 않은 참조입니다
test.c :(. text + xx) :`sqrt '에 대한 정의되지 않은 참조입니다
test.c :(. text + xx) :`sin'에 대한 정의되지 않은 참조입니다
test.c :(. text + xx) :`cos '에 대한 정의되지 않은 참조입니다
test.c :(. text + xx) :`atan'에 대한 정의되지 않은 참조입니다
오류 해결 방법
이것은 math.h에 포함 된 수학 관계의 함수를 사용할 때는 compile 옵션 -lm가 없으면 필요한 라이브러리가 링크되지 않기 때문이다.
실행 파일을 작성하기 위해서는 -lm 옵션을 붙여 컴파일 합니다.
$ gcc -o test test.c -lm