>>> On 2012/08/07 at 13:23, Josh Durgin <[email protected]> wrote:

> 
> It looks like this might be src/include/types.h including sys/types.h

> and src/include/rbd_types.h, which is including linux/types.h.
> 
> Does adding ifdefs to src/include/types.h so it includes
linux/types.h 
> on linux work?
> 

Here's what I put in src/include/types.h:

#if defined(__linux__)
#include <linux/types.h>
#elif defined(__FreeBSD__)
#include <sys/types.h>
#endif

(this is copied from other include files in the ceph tree).


This actually causes the compile to fail earlier, on
librgw_a-librgw.o:

make[3]: Entering directory `/root/ceph-0.48argonaut/src'
  CXX    librgw_a-librgw.o
/usr/include/stdint.h:41: error: conflicting declaration *typedef
long int int64_t*
/usr/include/linux/types.h:98: error: *int64_t* has a previous
declaration as *typedef __s64 int64_t*
/usr/include/stdint.h:56: error: conflicting declaration *typedef
long unsigned int uint64_t*
/usr/include/linux/types.h:96: error: *uint64_t* has a previous
declaration as *typedef __u64 uint64_t*
/usr/include/sys/types.h:46: error: conflicting declaration *typedef
__loff_t loff_t*
/usr/include/linux/types.h:30: error: *loff_t* has a previous
declaration as *typedef __kernel_loff_t loff_t*
/usr/include/sys/types.h:62: error: conflicting declaration *typedef
__dev_t dev_t*
/usr/include/linux/types.h:13: error: *dev_t* has a previous
declaration as *typedef __kernel_dev_t dev_t*
/usr/include/time.h:105: error: conflicting declaration *typedef
void* timer_t*
/usr/include/linux/types.h:22: error: *timer_t* has a previous
declaration as *typedef __kernel_timer_t timer_t*
/usr/include/sys/types.h:204: error: conflicting declaration *typedef
long unsigned int u_int64_t*
/usr/include/linux/types.h:97: error: *u_int64_t* has a previous
declaration as *typedef __u64 u_int64_t*
/usr/include/sys/select.h:78: error: conflicting declaration *typedef
struct fd_set fd_set*
/usr/include/linux/types.h:12: error: *fd_set* has a previous
declaration as *typedef struct __kernel_fd_set fd_set*
/usr/include/sys/types.h:248: error: conflicting declaration *typedef
__blkcnt64_t blkcnt_t*
/usr/include/linux/types.h:114: error: *blkcnt_t* has a previous
declaration as *typedef long unsigned int blkcnt_t*
make[3]: *** [librgw_a-librgw.o] Error 1

-Nick


--------
This e-mail may contain confidential and privileged material for the sole use 
of the intended recipient.  If this email is not intended for you, or you are 
not responsible for the delivery of this message to the intended recipient, 
please note that this message may contain SEAKR Engineering (SEAKR) 
Privileged/Proprietary Information.  In such a case, you are strictly 
prohibited from downloading, photocopying, distributing or otherwise using this 
message, its contents or attachments in any way.  If you have received this 
message in error, please notify us immediately by replying to this e-mail and 
delete the message from your mailbox.  Information contained in this message 
that does not relate to the business of SEAKR is neither endorsed by nor 
attributable to SEAKR.

Reply via email to