본문 바로가기

Programming

Linux C - 컴파일시 sa_family_t 못 찾는 에러 발생시 대처법

컴파일을 하다가 아래와 같은 에러를 발생

/usr/include/linux/netlink.h:34: error: expected specifier-qualifier-list before 'sa_family_t'

 

위 에러는 소스에서 사용하는 시스템 헤더파일에서 사용하는 sa_family_t를 찾지 못하는 에러이다.
그래서 아래의 구문이 필요한데, 이는 <bits/sockaddr.h> 에 정의되어 있다.

typedef unsigned short int sa_family_t;

 

소스의 상위에 <bits/sockaddr.h> 를 인클루드 시켜주면 해결!

 

 

 

cf.  <sys/socket.h>  에도 여차여차 연결되어  포함되어 있는거 같다.

이거 인클루드 해도 해결.