top of page

Circular xxx <- xxx dependency dropped. 오류 해결

2016년 1월 22일
1분 분량

아래와 같은 파일 목록을 가지고 있는 프로그램을 작성하였습니다. 그래서 컴파일을 하던 도중에 발생한 오류를 해결한 방법에 대해 적어 보고자 합니다.

make[5]: Circular /nfs/fafs/T014_network_cmd_add_time/network_proc/network_proc.o <- /nfs/fafs/T014_network_cmd_add_time/network_proc/network_proc.o dependency dropped.

오류의 내용은 위에 내용입니다. 검색을 해보니 대충 'network_proc.o'라는 파일이 다시 또 'network_proc.o'라는 파일의 무엇을 호출하여 뱅글뱅글 돈다는 의미입니다.

하지만 이 경우에 소스코드를 보아도 문제점을 찾기 어렵습니다. 왜냐면 다시 호출하지 않을 경우가 많을테니까요. 의외로 이 문제점은 간단한 곳에 있었습니다.

이 부분은 Makefile입니다. Makefile과 파일 목록을 잘 보시면 network_proc.c 라는 파일이 보이실텐데요. 저는 이것을 생각하고 "$(MODULE_NAME)-objs += network_proc.o" 라는 부분을 작성하였습니다. (위 사진의 빈 줄 포함 6줄) 하지만 첫번째 줄을 보면 "MODULE_NAME = network_proc" 이라고 되어 있습니다. 결국 모듈 이름과 새로 만들려고 했떤 파일의 이름이 같아지게 됩니다.

그래서 이 문제를 해결하기 위해 이름을 바꾸고 make를 실행해 보았습니다.

위와 같이 파일명을 바꾸고 아래와 같이 Makefile을 수정 했습니다. 안 겹치게요

그랬더니 저는 다른 문제가 생겼네요... 일단 이것 좀 고치고 봅시다...;;;

 
 
 

댓글


bottom of page