I'm trying to run Open mpi on Microblaze(soft core processor), with operating system xilkernel(OS from xilinx). I'm getting errors in the file: opal_object.h .
This is the part of the code where I'm getting errors. typedef struct opal_object_t opal_object_t; //line 1 typedef struct opal_class_t opal_class_t; //line 2 typedef void (*opal_construct_t) (opal_object_t *); //line 3 typedef void (*opal_destruct_t) (opal_object_t *); //line 4 struct opal_class_t { const char *cls_name; /**< symbolic name for class */opal_class_t *cls_parent; /**< parent class descriptor */ //line 5 opal_construct_t cls_construct; /**< class constructor */ opal_destruct_t cls_destruct; /**< class destructor */ int cls_initialized; /**< is class initialized */ int cls_depth; /**< depth of class hierarchy tree */ opal_construct_t *cls_construct_array; /**< array of parent class constructors */ opal_destruct_t *cls_destruct_array; /**< array of parent class destructors */ size_t cls_sizeof; /**< size of an object instance */ }; struct opal_object_t { #if OMPI_ENABLE_DEBUG /** Magic ID -- want this to be the very first item in the struct's memory */ uint64_t obj_magic_id; #endifopal_class_t *obj_class; /**< class descriptor */ //line6 volatile int32_t obj_reference_count; /**< reference count */ #if OMPI_ENABLE_DEBUG const char* cls_init_file_name; /**< In debug mode store the file where the object get contructed */ int cls_init_lineno; /**< In debug mode store the line number where the object get contructed */ #endif /* OMPI_ENABLE_DEBUG */ }; The errors are: line 1: storage class specified for parameter 'opal_object_t' line 2: storage class specified for parameter 'opal_class_t' line 3 and 4: expected declaration specifiers or '...' before 'opal_object_t' line 5 and 6: expected specifier-qualifier-list before 'opal_class_t' The compiler used is microblaze gcc 4.6.2 How to remove these errors? Is there any other way to make these definitions, so that compiler won't give it as an error?