본문 바로가기

Error Messeages

error: 'cap_t' undeclared

증상

mod_ruid 를 설치하는 도중 생긴 error

 

/usr/local/src/mod_ruid-0.6/mod_ruid.c:234: error: 'cap_t' undeclared (first use in this function)
/usr/local/src/mod_ruid-0.6/mod_ruid.c:234: error: (Each undeclared identifier is reported only once
/usr/local/src/mod_ruid-0.6/mod_ruid.c:234: error: for each function it appears in.)
/usr/local/src/mod_ruid-0.6/mod_ruid.c:234: error: expected ';' before 'cap'
/usr/local/src/mod_ruid-0.6/mod_ruid.c:235: error: 'cap_value_t' undeclared (first use in this function)
/usr/local/src/mod_ruid-0.6/mod_ruid.c:235: error: expected ';' before 'capval'
/usr/local/src/mod_ruid-0.6/mod_ruid.c:238: error: 'cap' undeclared (first use in this function)
/usr/local/src/mod_ruid-0.6/mod_ruid.c:239: error: 'capval' undeclared (first use in this function)
/usr/local/src/mod_ruid-0.6/mod_ruid.c:242: error: 'CAP_PERMITTED' undeclared (first use in this function)
/usr/local/src/mod_ruid-0.6/mod_ruid.c:242: error: 'CAP_SET' undeclared (first use in this function)

 

원인 

libcap libcap-devel 패키지가 없는게 원인

 

해결 

yum install libcap libcap-devel

 

하지만, 그래도 안될 경우는? 무엇이 문제인가?

64비트 운영체제였다면 mod_ruid 가 32비트 패키지인게 원인이었다.

그러므로 libcap 도 32비트로 설치해주어야 한다.

 

해결

yum install libcap.i686 libcap-devel.i686