Re: [OMPI users] Problems with compilig of OpenMPI 1.2.7

2008-09-02 Thread Rolf Vandevaart

On 08/29/08 19:27, Jeff Squyres wrote:

On Aug 29, 2008, at 10:48 AM, Rolf Vandevaart wrote:

In the file mpicxx.cc there is a declaration near the bottom that 
looks like this.


const int LOCK_SHARED = MPI_LOCK_SHARED;

The preprocessor is going through that file and replacing LOCK_SHARED 
with 0x01.  Then when it tries to compile it you are trying to compile 
a line that looks like this.


const int 0x01 = 2;

That is why you see the error.


Hmm.  This hasn't changed in mpicxx.cc for a long time.  What made it 
get activated now?




I think I touched upon this in my earlier post.  There was a change in 
/usr/include/sys/synch.h Solaris header file. And one of the changes was 
adding the following line.


#define LOCK_SHARED 0x01/* same as USYNC_PROCESS */

Therefore, we are seeing it on later versions of Solaris.

Rolf

--

=
rolf.vandeva...@sun.com
781-442-3043
=


Re: [OMPI users] Problems with compilig of OpenMPI 1.2.7

2008-08-29 Thread Jeff Squyres

On Aug 29, 2008, at 10:48 AM, Rolf Vandevaart wrote:

In the file mpicxx.cc there is a declaration near the bottom that  
looks like this.


const int LOCK_SHARED = MPI_LOCK_SHARED;

The preprocessor is going through that file and replacing  
LOCK_SHARED with 0x01.  Then when it tries to compile it you are  
trying to compile a line that looks like this.


const int 0x01 = 2;

That is why you see the error.


Hmm.  This hasn't changed in mpicxx.cc for a long time.  What made it  
get activated now?


--
Jeff Squyres
Cisco Systems



Re: [OMPI users] Problems with compilig of OpenMPI 1.2.7

2008-08-29 Thread Jeff Squyres

On Aug 29, 2008, at 9:03 AM, Paul Kapinos wrote:

I just tried to install the 1.2.7 version of OpenMPI alongside to  
our used 1.2.5 and 1.2.6.


Because we use gcc, intel, studio and pgi compilers on three OSes  
(Linux, Solaris/Sparc/ Solaris/Opteron), we have at least 15  
Versions to compile (not all compilers are available everywere).  
Some versions are configured and compiled well (so, I don't check  
them yet, but they compiled and installed...)


But 8 of versions beraks the compilation with some crude error  
messages. Mostly there were logs like


"/usr/include/infiniband/kern-abi.h", line 144: zero-sized struct/ 
union
"btl_openib_component.c", line 293: warning: syntax error:  empty  
declaration


Can you send the full config.log and make output from at least one of  
these builds?


--
Jeff Squyres
Cisco Systems



Re: [OMPI users] Problems with compilig of OpenMPI 1.2.7

2008-08-29 Thread Rolf Vandevaart


Hi Again Paul:

A workaround for your issue is to add the following to your configure line.

--without-threads

This will prevent the synch.h from being included as it is not needed 
anyways.  We will have to figure out a better solution but for now I 
think that will get you passed your mpicxx.cc issue.


Rolf

On 08/29/08 13:48, Rolf Vandevaart wrote:

Hi Paul:

I can comment on why you are seeing the mpicxx problem, but I am not 
sure what to do about it.


In the file mpicxx.cc there is a declaration near the bottom that looks 
like this.


const int LOCK_SHARED = MPI_LOCK_SHARED;

The preprocessor is going through that file and replacing LOCK_SHARED 
with 0x01.  Then when it tries to compile it you are trying to compile a 
line that looks like this.


const int 0x01 = 2;

That is why you see the error.

In our case I noticed that newer versions of Solaris have an include 
file called /usr/include/sys/synch.h with a define for LOCK_SHARED.


Here it is from the file.

#define LOCK_SHARED 0x01  /* same as USYNC_PROCESS */

So, what to do about it?  I am not sure yet.  I will check around a little.

Rolf


On 08/29/08 12:03, Paul Kapinos wrote:

Hi all,

I just tried to install the 1.2.7 version of OpenMPI alongside to our 
used 1.2.5 and 1.2.6.


Because we use gcc, intel, studio and pgi compilers on three OSes 
(Linux, Solaris/Sparc/ Solaris/Opteron), we have at least 15 Versions 
to compile (not all compilers are available everywere). Some versions 
are configured and compiled well (so, I don't check them yet, but they 
compiled and installed...)


But 8 of versions beraks the compilation with some crude error 
messages. Mostly there were logs like


"/usr/include/infiniband/kern-abi.h", line 144: zero-sized struct/union
"btl_openib_component.c", line 293: warning: syntax error:  empty 
declaration



Six of 8 broken versions stopped the compilation on the file 
./ompi/mpi/cxx/mpicxx.cc


+
..
Making all in cxx
gmake[3]: Entering directory 
`/rwthfs/rz/cluster/home/pk224850/OpenMPI/openmpi-1.2.7_SolX86_studio/ompi/mpi/cxx' 


source='mpicxx.cc' object='mpicxx.lo' libtool=yes \
DEPDIR=.deps depmode=none /bin/bash ../../../config/depcomp \
/bin/bash ../../../libtool --tag=CXX   --mode=compile CC 
-DHAVE_CONFIG_H -I. -I../../../opal/include -I../../../orte/include 
-I../../../ompi/include  -DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 
-DOMPI_SKIP_MPICXX=1 -I../../..-DNDEBUG -O2 -m64 -mt -c -o 
mpicxx.lo mpicxx.cc
libtool: compile:  CC -DHAVE_CONFIG_H -I. -I../../../opal/include 
-I../../../orte/include -I../../../ompi/include 
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../.. 
-DNDEBUG -O2 -m64 -mt -c mpicxx.cc  -KPIC -DPIC -o .libs/mpicxx.o
"mpicxx.cc", line 293: Error: A declaration does not specify a tag or 
an identifier.

"mpicxx.cc", line 293: Error: Use ";" to terminate declarations.
"mpicxx.cc", line 293: Error: A declaration was expected instead of 
"0x01".

3 Error(s) detected
...
+


So, it seems to me, there is somewhat nasty with one or more 
declarations  somewhere...


Does somebody have any idea what I am doing wrong? Or maybe there is 
an bug in 1.2.7?



Best regards
Paul Kapinos


P.S. I Used quite straght forward configuretion like following:

./configure --enable-static --with-devel-headers CFLAGS="-O2 -m64" 
CXXFLAGS="-O2 -m64" F77=f77 FFLAGS="-O2 -m64" FCFLAGS="-O2 -m64" 
LDFLAGS="-O2 -m64" 
--prefix=/rwthfs/rz/SW/MPI/openmpi-1.2.7/solx8664/studio



Of course other versions (32bit, other compiler) are configured with 
adapted settings ;-) The very same settings applied to 1.2.5 and 1.2.6 
does not produce any problems in the past.


___
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users






--

=
rolf.vandeva...@sun.com
781-442-3043
=


Re: [OMPI users] Problems with compilig of OpenMPI 1.2.7

2008-08-29 Thread Rolf Vandevaart

Hi Paul:

I can comment on why you are seeing the mpicxx problem, but I am not 
sure what to do about it.


In the file mpicxx.cc there is a declaration near the bottom that looks 
like this.


const int LOCK_SHARED = MPI_LOCK_SHARED;

The preprocessor is going through that file and replacing LOCK_SHARED 
with 0x01.  Then when it tries to compile it you are trying to compile a 
line that looks like this.


const int 0x01 = 2;

That is why you see the error.

In our case I noticed that newer versions of Solaris have an include 
file called /usr/include/sys/synch.h with a define for LOCK_SHARED.


Here it is from the file.

#define LOCK_SHARED 0x01  /* same as USYNC_PROCESS */

So, what to do about it?  I am not sure yet.  I will check around a little.

Rolf


On 08/29/08 12:03, Paul Kapinos wrote:

Hi all,

I just tried to install the 1.2.7 version of OpenMPI alongside to our 
used 1.2.5 and 1.2.6.


Because we use gcc, intel, studio and pgi compilers on three OSes 
(Linux, Solaris/Sparc/ Solaris/Opteron), we have at least 15 Versions to 
compile (not all compilers are available everywere). Some versions are 
configured and compiled well (so, I don't check them yet, but they 
compiled and installed...)


But 8 of versions beraks the compilation with some crude error messages. 
Mostly there were logs like


"/usr/include/infiniband/kern-abi.h", line 144: zero-sized struct/union
"btl_openib_component.c", line 293: warning: syntax error:  empty 
declaration



Six of 8 broken versions stopped the compilation on the file 
./ompi/mpi/cxx/mpicxx.cc


+
..
Making all in cxx
gmake[3]: Entering directory 
`/rwthfs/rz/cluster/home/pk224850/OpenMPI/openmpi-1.2.7_SolX86_studio/ompi/mpi/cxx' 


source='mpicxx.cc' object='mpicxx.lo' libtool=yes \
DEPDIR=.deps depmode=none /bin/bash ../../../config/depcomp \
/bin/bash ../../../libtool --tag=CXX   --mode=compile CC 
-DHAVE_CONFIG_H -I. -I../../../opal/include -I../../../orte/include 
-I../../../ompi/include  -DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 
-DOMPI_SKIP_MPICXX=1 -I../../..-DNDEBUG -O2 -m64 -mt -c -o mpicxx.lo 
mpicxx.cc
libtool: compile:  CC -DHAVE_CONFIG_H -I. -I../../../opal/include 
-I../../../orte/include -I../../../ompi/include 
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../.. 
-DNDEBUG -O2 -m64 -mt -c mpicxx.cc  -KPIC -DPIC -o .libs/mpicxx.o
"mpicxx.cc", line 293: Error: A declaration does not specify a tag or an 
identifier.

"mpicxx.cc", line 293: Error: Use ";" to terminate declarations.
"mpicxx.cc", line 293: Error: A declaration was expected instead of "0x01".
3 Error(s) detected
...
+


So, it seems to me, there is somewhat nasty with one or more 
declarations  somewhere...


Does somebody have any idea what I am doing wrong? Or maybe there is an 
bug in 1.2.7?



Best regards
Paul Kapinos


P.S. I Used quite straght forward configuretion like following:

./configure --enable-static --with-devel-headers CFLAGS="-O2 -m64" 
CXXFLAGS="-O2 -m64" F77=f77 FFLAGS="-O2 -m64" FCFLAGS="-O2 -m64" 
LDFLAGS="-O2 -m64" --prefix=/rwthfs/rz/SW/MPI/openmpi-1.2.7/solx8664/studio



Of course other versions (32bit, other compiler) are configured with 
adapted settings ;-) The very same settings applied to 1.2.5 and 1.2.6 
does not produce any problems in the past.


___
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users



--

=
rolf.vandeva...@sun.com
781-442-3043
=