Hi Johnson,
I can see the reason for the errors, that's because you enabled option
"OMPI_ENABLE_DEBUG" option in CMake GUI, and for some reason, this
option will not work properly right now.
So please just disable "OMPI_ENABLE_DEBUG", and configure/compile again,
those errors will disappear.
Best Regards,
Shiqing
cjohn...@valverdecomputing.com wrote:
The OpenMPI build problem I'm having occurs in both OpenMPI 1.4 and 1.3.4.
I am on a Windows 7 (US) Enterprise (x86) OS on an HP system with
Intel core 2 extreme x9000 (4GB RAM), using the 2005 Visual Studio for
S/W Architects (release 8.0.50727.867). [That release has everything
the platform SDK would have.]
I'm using CMake 2.8 to generate code, I used it correctly, pointing at
the root directory where the makelists are located for the source side
and to an empty directory for the build side: did configure, click
debug, configure again, generate and opened the OpenMPI.sln file
created by CMake. Then I right-clicked on the "ALL_BUILD" project and
selected "build".
1 project built, 13 did not. I have the build listing. [I'm afraid of
what the mailing list server would do if I attached it to this email.;
The first error in the listing points to source line:
C:\prog\openmpi-1.3.4\opal/class/opal_object.h(182),
After that critical error, the compile falls apart due to it. Here's
the section of the listing with the first error in the center:
1>Generating Code...
1>Compiling...
1>signal.c
1>select.c
1>log.c
1>evutil.c
1>event.c
1>win32.c
1>c:\prog\openmpi-1.3.4\opal\event\win32-code\./config.h(185) :
warning C4005: 'PACKAGE_BUGREPORT' : macro redefinition
1> c:\prog\mon\opal\include\opal_config.h(1307) : see previous
definition of 'PACKAGE_BUGREPORT'
1>c:\prog\openmpi-1.3.4\opal\event\win32-code\./config.h(188) :
warning C4005: 'PACKAGE_NAME' : macro redefinition
1> c:\prog\mon\opal\include\opal_config.h(1310) : see previous
definition of 'PACKAGE_NAME'
1>c:\prog\openmpi-1.3.4\opal\event\win32-code\./config.h(191) :
warning C4005: 'PACKAGE_STRING' : macro redefinition
1> c:\prog\mon\opal\include\opal_config.h(1313) : see previous
definition of 'PACKAGE_STRING'
1>c:\prog\openmpi-1.3.4\opal\event\win32-code\./config.h(194) :
warning C4005: 'PACKAGE_TARNAME' : macro redefinition
1> c:\prog\mon\opal\include\opal_config.h(1316) : see previous
definition of 'PACKAGE_TARNAME'
1>c:\prog\openmpi-1.3.4\opal\event\win32-code\./config.h(197) :
warning C4005: 'PACKAGE_VERSION' : macro redefinition
1> c:\prog\mon\opal\include\opal_config.h(1319) : see previous
definition of 'PACKAGE_VERSION'
1>c:\prog\openmpi-1.3.4\opal\event\win32-code\./config.h(212) :
warning C4005: '__func__' : macro redefinition
1> C:\prog\openmpi-1.3.4\opal\include\opal_config_bottom.h(449)
: see previous definition of '__func__'
****************************** First error in build listing, below:
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(182) : error C2016: C
requires that a struct or union has at least one member
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(182) : error C2061:
syntax error : identifier '__uint64_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(190) : error C2059:
syntax error : '}'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(248) : error C2037:
left of 'obj_magic_id' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(249) : error C2037:
left of 'cls_init_file_name' specifies undefined struct/union
'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(250) : error C2037:
left of 'cls_init_lineno' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(421) : error C2037:
left of 'obj_class' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(423) : error C2037:
left of 'obj_class' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(443) : error C2037:
left of 'obj_class' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(445) : error C2037:
left of 'obj_class' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(466) : error C2027:
use of undefined type 'opal_object_t'
1> C:\prog\openmpi-1.3.4\opal/class/opal_object.h(178) : see
declaration of 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(473) : error C2037:
left of 'obj_class' specifies undefined struct/union 'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(474) : error C2037:
left of 'obj_reference_count' specifies undefined struct/union
'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(497) : error C2037:
left of 'obj_reference_count' specifies undefined struct/union
'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(498) : error C2037:
left of 'obj_reference_count' specifies undefined struct/union
'opal_object_t'
1>C:\prog\openmpi-1.3.4\opal/class/opal_object.h(498) : warning C4033:
'opal_obj_update' must return a value
1>C:\prog\openmpi-1.3.4\opal/util/output.h(99) : error C2079: 'super'
uses undefined struct 'opal_object_t'
Here's the source file section with the error line indicated:
---> Opal_object.h (lines 173-190)
/**
* For static initializations of OBJects.
*
* @param NAME Name of the class to initialize
*/
#if OMPI_ENABLE_DEBUG
#define OPAL_OBJ_STATIC_INIT(BASE_CLASS) { OPAL_OBJ_MAGIC_ID,
OBJ_CLASS(BASE_CLASS), 1, __FILE__, __LINE__ }
#else
#define OPAL_OBJ_STATIC_INIT(BASE_CLASS) { OBJ_CLASS(BASE_CLASS), 1 }
#endif
/**
* Base object.
*
* This is special and does not follow the pattern for other classes.
*/
struct opal_object_t {
#if OMPI_ENABLE_DEBUG
/** Magic ID -- want this to be the very first item in the
struct's memory */
************************* Error (the first one) C2016 points to line
182 below:
182-> uint64_t obj_magic_id;
#endif
opal_class_t *obj_class; /**< class descriptor */
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 */
};
Usually, compile errors in a system are like a missing path or a
header file not found, this one has me stumped.
C.S. Johnson ...
------------------------------------------------------------------------
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users
--
--------------------------------------------------------------
Shiqing Fan http://www.hlrs.de/people/fan
High Performance Computing Tel.: +49 711 685 87234
Center Stuttgart (HLRS) Fax.: +49 711 685 65832
Address:Allmandring 30 email: f...@hlrs.de
70569 Stuttgart