Re: [OMPI users] mpi.h:: OMPI_HAVE_FORTRAN_LOGICAL / INTEGER / REAL are set to 0 (zero)

2011-06-11 Thread Shiqing Fan


Hi,

I did a few tests to reproduce the problem, and found out that it is 
because of using a single cmake cache to handle the fortran settings, so 
in some cases the part of the cache can be refreshed. I'm thinking to 
have a second cache to make it more convenient for users.


So the current solution is just to run "configure" only once after 
enabling OMPI_WANT_F77_BINDINGS. I will implement the update for the 
CMake files soon.



Thanks,
Shiqing


On 2011-05-31 2:32 PM, hi wrote:

Greetings once again !!!

Environment:
OS: Windows 7 64-bit
Compilers: ifort and cl.exe (both 64-bit)
CMAKE: version-2.8.4
OpenMPI: version 1.5.3

As described in the README.WINDOWS.txt, when performing 'First
approach:" I am observing following...
1) via cmake-gui.exe clicked 'Configure' and it shown all config
options in pink color
 see output of this step in attached cmake_gui_output1.txt
2) then I enabled OMPI_WANT_F77_BINDING and OMPI_WANT_F90_BINDING to
true and then clicked 'Configure'.
 see output of this step in attached cmake_gui_output2.txt

As you can observe in cmake_gui_output2.txt file, it succeeded on all
Fortran data types (except INTEGER*16 and REAL*2).
Now what I am observing is that eventho' fortran compiler supports
most of the datatypes, but still mpi.h file reports '0' for
corresponding datatype.

/* Whether we have FORTRAN LOGICAL*1 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL1 0

/* Whether we have FORTRAN LOGICAL*2 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL2 0

/* Whether we have FORTRAN LOGICAL*4 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL4 0

/* Whether we have FORTRAN LOGICAL*8 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL8 0

/* Whether we have FORTRAN INTEGER*1 or not */
#define OMPI_HAVE_FORTRAN_INTEGER1 0

/* Whether we have FORTRAN INTEGER*16 or not */
#define OMPI_HAVE_FORTRAN_INTEGER16 0

/* Whether we have FORTRAN INTEGER*2 or not */
#define OMPI_HAVE_FORTRAN_INTEGER2 0

/* Whether we have FORTRAN INTEGER*4 or not */
#define OMPI_HAVE_FORTRAN_INTEGER4 0

/* Whether we have FORTRAN INTEGER*8 or not */
#define OMPI_HAVE_FORTRAN_INTEGER8 0

/* Whether we have FORTRAN REAL*16 or not */
#define OMPI_HAVE_FORTRAN_REAL16 0

/* Whether we have FORTRAN REAL*2 or not */
#define OMPI_HAVE_FORTRAN_REAL2 0

/* Whether we have FORTRAN REAL*4 or not */
#define OMPI_HAVE_FORTRAN_REAL4 0

/* Whether we have FORTRAN REAL*8 or not */
#define OMPI_HAVE_FORTRAN_REAL8 0
==

Any idea on why mpi.h is setting zero for all above fortran datatypes
despite fortran compiler supports most of the datatypes (see
cmake_gui_output2.txt)???

Thank you in advance.
-Hiral


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



--
---
Shiqing Fan
High Performance Computing Center Stuttgart (HLRS)
Tel: ++49(0)711-685-87234  Nobelstrasse 19
Fax: ++49(0)711-685-65832  70569 Stuttgart
http://www.hlrs.de/organization/people/shiqing-fan/
email:f...@hlrs.de



[OMPI users] mpi.h:: OMPI_HAVE_FORTRAN_LOGICAL / INTEGER / REAL are set to 0 (zero)

2011-05-31 Thread hi
Greetings once again !!!

Environment:
OS: Windows 7 64-bit
Compilers: ifort and cl.exe (both 64-bit)
CMAKE: version-2.8.4
OpenMPI: version 1.5.3

As described in the README.WINDOWS.txt, when performing 'First
approach:" I am observing following...
1) via cmake-gui.exe clicked 'Configure' and it shown all config
options in pink color
    see output of this step in attached cmake_gui_output1.txt
2) then I enabled OMPI_WANT_F77_BINDING and OMPI_WANT_F90_BINDING to
true and then clicked 'Configure'.
    see output of this step in attached cmake_gui_output2.txt

As you can observe in cmake_gui_output2.txt file, it succeeded on all
Fortran data types (except INTEGER*16 and REAL*2).
Now what I am observing is that eventho' fortran compiler supports
most of the datatypes, but still mpi.h file reports '0' for
corresponding datatype.

/* Whether we have FORTRAN LOGICAL*1 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL1 0

/* Whether we have FORTRAN LOGICAL*2 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL2 0

/* Whether we have FORTRAN LOGICAL*4 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL4 0

/* Whether we have FORTRAN LOGICAL*8 or not */
#define OMPI_HAVE_FORTRAN_LOGICAL8 0

/* Whether we have FORTRAN INTEGER*1 or not */
#define OMPI_HAVE_FORTRAN_INTEGER1 0

/* Whether we have FORTRAN INTEGER*16 or not */
#define OMPI_HAVE_FORTRAN_INTEGER16 0

/* Whether we have FORTRAN INTEGER*2 or not */
#define OMPI_HAVE_FORTRAN_INTEGER2 0

/* Whether we have FORTRAN INTEGER*4 or not */
#define OMPI_HAVE_FORTRAN_INTEGER4 0

/* Whether we have FORTRAN INTEGER*8 or not */
#define OMPI_HAVE_FORTRAN_INTEGER8 0

/* Whether we have FORTRAN REAL*16 or not */
#define OMPI_HAVE_FORTRAN_REAL16 0

/* Whether we have FORTRAN REAL*2 or not */
#define OMPI_HAVE_FORTRAN_REAL2 0

/* Whether we have FORTRAN REAL*4 or not */
#define OMPI_HAVE_FORTRAN_REAL4 0

/* Whether we have FORTRAN REAL*8 or not */
#define OMPI_HAVE_FORTRAN_REAL8 0
==

Any idea on why mpi.h is setting zero for all above fortran datatypes
despite fortran compiler supports most of the datatypes (see
cmake_gui_output2.txt)???

Thank you in advance.
-Hiral
Checking for working Fortran compiler...
Checking for working Fortran compiler...ifort.exe
Check ifort.exe external symbol convention...
Check ifort.exe external symbol convention...upper case
Check if Fortran 77 compiler supports CHARACTER...
Check if Fortran 77 compiler supports CHARACTER...yes
Check size of Fortran 77 CHARACTER...
Check size of Fortran 77 CHARACTER...1
Check corresponding C type of CHARACTER...
Check corresponding C type of CHARACTER... char
Check alignment of Fortran CHARACTER...
Check alignment of Fortran CHARACTER...1

Check if Fortran 77 compiler supports LOGICAL...
Check if Fortran 77 compiler supports LOGICAL...yes
Check size of Fortran 77 LOGICAL...
Check size of Fortran 77 LOGICAL...4
Check corresponding C type of LOGICAL...
Check corresponding C type of LOGICAL... int
Check alignment of Fortran LOGICAL...
Check alignment of Fortran LOGICAL...4

Check if Fortran 77 compiler supports LOGICAL*1...
Check if Fortran 77 compiler supports LOGICAL*1...yes
Check size of Fortran 77 LOGICAL*1...
Check size of Fortran 77 LOGICAL*1...1
Check corresponding C type of LOGICAL*1...
Check corresponding C type of LOGICAL*1... char
Check alignment of Fortran LOGICAL*1...
Check alignment of Fortran LOGICAL*1...1

Check if Fortran 77 compiler supports LOGICAL*2...
Check if Fortran 77 compiler supports LOGICAL*2...yes
Check size of Fortran 77 LOGICAL*2...
Check size of Fortran 77 LOGICAL*2...2
Check corresponding C type of LOGICAL*2...
Check corresponding C type of LOGICAL*2... short
Check alignment of Fortran LOGICAL*2...
Check alignment of Fortran LOGICAL*2...2

Check if Fortran 77 compiler supports LOGICAL*4...
Check if Fortran 77 compiler supports LOGICAL*4...yes
Check size of Fortran 77 LOGICAL*4...
Check size of Fortran 77 LOGICAL*4...4
Check corresponding C type of LOGICAL*4...
Check corresponding C type of LOGICAL*4... int
Check alignment of Fortran LOGICAL*4...
Check alignment of Fortran LOGICAL*4...4

Check if Fortran 77 compiler supports LOGICAL*8...
Check if Fortran 77 compiler supports LOGICAL*8...yes
Check size of Fortran 77 LOGICAL*8...
Check size of Fortran 77 LOGICAL*8...8
Check corresponding C type of LOGICAL*8...
Check corresponding C type of LOGICAL*8... long long
Check alignment of Fortran LOGICAL*8...
Check alignment of Fortran LOGICAL*8...8

Check if Fortran 77 compiler supports INTEGER...
Check if Fortran 77 compiler supports INTEGER...yes
Check size of Fortran 77 INTEGER...
Check size of Fortran 77 INTEGER...4
Check corresponding C type of INTEGER...
Check corresponding C type of INTEGER... int
Check alignment of Fortran INTEGER...
Check alignment of Fortran INTEGER...4

Check if Fortran 77 compiler supports INTEGER*1...
Check if Fortran 77 compiler supports INTEGER*1...yes
Check size of Fortran 77 INTEGER*1...
Check size of Fortran 77 INTEGER*1...1
Check corresponding C type of INTEGER*1...
Check