커널 프로그래밍에서 size_t 사용?

kwchun의 이미지

커널 헤더를 쓰는 프로그램을 컴파일해야 하는데요. 코드를 간략히 하면 아래와 같습니다.

#include <linux/types.h>
 
main(){
size_t a;
}

그런데 컴파일하면 다음과 같은 에러가 납니다.
$ gcc -Wall sizet.c
error: ‘size_t’ undeclared

아무리 살펴봐도 문제 될 건 없는 것 같은데... 왜 이러죠?
hys545의 이미지

즐린
이 파일을 include해보세여

즐린

kwchun의 이미지

stddef.h를 include하면 컴파일은 되지만, 커널 헤더가 아니라서요. linux/stddef.h는 아예 size_t 관련한 부분이 없고요. 커널 소스의 다른 부분을 보면, size_t를 잘 쓰던데... 어찌된 일인지, 전 안되는군요.