커널 2.6 (2.6.5) 에서
warning: function declaration isn't a prototype linux kernel compile
새로운 함수를 추가해 줄때마다 이런 메세지가 나는데요
결과적으로 컴파일 이나 이 함수를 사용할때에 문제는 발생하지 않았는데,
어떤 의미의 메세지이고, 어떻게 해결해야하는지 아시는 분은 답변을 부탁드립니다.
함수의 원형을 선언하거나 정의할 때 인자 타입을 명시하지 않은 경우에 나오는 경고문 인듯 합니다.
(gcc 매뉴얼의 -Wstrict-prototypes 옵션을 참고하세요)
void foo(); -> void foo(void); 로 바꿔 보세요.
2.4는 괜찮았던것 같은데 2.6 이상에서는 컴파일 옵션이 바꼈는지 void 안 붙여주면 에러가 뜨네요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
-Wstrict-prototypes 옵션..
함수의 원형을 선언하거나 정의할 때
인자 타입을 명시하지 않은 경우에
나오는 경고문 인듯 합니다.
(gcc 매뉴얼의 -Wstrict-prototypes 옵션을 참고하세요)
void 지정해 주셔야 됩니다.
void foo(); -> void foo(void);
로 바꿔 보세요.
2.4는 괜찮았던것 같은데 2.6 이상에서는 컴파일 옵션이 바꼈는지 void 안 붙여주면 에러가 뜨네요.
댓글 달기