[OMPI devel] [1.10.3rc3] Linux static link failure of fortran examples

2016-05-25 Thread Paul Hargrove
The following error did *not* occur on the same system with the previous RC.

I have configured 1.10.3rc3 on a normal x86-64/Linux system with:
   --prefix=[...] --enable-debug --enable-static --disable-shared

When I try to use the resulting build to compile the examples:

$ make -k
mpicc -ghello_c.c   -o hello_c
mpicc -gring_c.c   -o ring_c
mpicc -gconnectivity_c.c   -o connectivity_c
make[1]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
mpic++ -ghello_cxx.cc   -o hello_cxx
mpic++ -gring_cxx.cc   -o ring_cxx
make[2]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
mpifort -g hello_mpifh.f -o hello_mpifh
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
In function `ompi_warn_fork':
ompi_mpi_init.c:(.text+0x282): undefined reference to `pthread_atfork'
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
In function `ptmalloc_init':
malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [hello_mpifh] Error 1
mpifort -g ring_mpifh.f -o ring_mpifh
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
In function `ompi_warn_fork':
ompi_mpi_init.c:(.text+0x282): undefined reference to `pthread_atfork'
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
In function `ptmalloc_init':
malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [ring_mpifh] Error 1
make[2]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[1]: *** [mpi] Error 2
make[1]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make: *** [all] Error 2

Comparing the configure output from RC2 and RC3 is informative:

 checking if word-sized integers must be word-size aligned... no
 checking if C compiler and POSIX threads work as is... no
 checking if C++ compiler and POSIX threads work as is... no
-checking if Fortran compiler and POSIX threads work as is... no
+checking if Fortran compiler and POSIX threads work as is... yes
 checking if C compiler and POSIX threads work with -Kthread... no
 checking if C compiler and POSIX threads work with -kthread... no
 checking if C compiler and POSIX threads work with -pthread... yes
 checking if C++ compiler and POSIX threads work with -Kthread... no
 checking if C++ compiler and POSIX threads work with -kthread... no
 checking if C++ compiler and POSIX threads work with -pthread... yes
-checking if Fortran compiler and POSIX threads work with -Kthread... no
-checking if Fortran compiler and POSIX threads work with -kthread... no
-checking if Fortran compiler and POSIX threads work with -pthread... yes
 checking for pthread_mutexattr_setpshared... yes
 checking for pthread_condattr_setpshared... yes
 checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes


So, while RC2's configure determined that Fortran+pthreads needed -pthread,
it appears that RC3 has instead determined that Fortran+pthreads "work as
is".

Here is the related portion of config.log from RC2:

configure:63400: checking if Fortran compiler and POSIX threads work as is
configure:63481: gcc -std=gnu99 -g -finline-functions -fno-strict-aliasing
-I. -c conftest.c
conftest.c: In function 'pthreadtest_f':
conftest.c:27:5: warning: passing argument 1 of 'pthread_join' makes
integer from pointer without a cast
 pthread_join(&newthread, 0);
 ^
In file included from conftest.c:3:0:
/usr/include/pthread.h:242:12: note: expected 'pthread_t' but argument is
of type 'pthread_t *'
 extern int pthread_join (pthread_t __th, void **__thread_return);
^
configure:63488: $? = 0
configure:63498: gfortran -g conftestf.f conftest.o -o conftest  -lm -lutil
conftest.o: In function `pthreadtest_f':
conftest.c:(.text+0xa8): undefined reference to `__pthread_register_cancel'
conftest.c:(.text+0xc3): undefined reference to `pthread_create'
conftest.c:(.text+0xd5): undefined reference to `pthread_join'
conftest.c:(.text+0xe4): undefined reference to
`__pthread_unregister_cancel'
collect2: error: ld returned 1 exit status
configure:63505: $? = 1


And here it is for RC3:

configure:63623: checking if Fortran compiler and POSIX threads work as is
configure:63704: gcc -std=gnu99 -g -finline-functions -fno-strict-aliasing
-I. -c conftest.c
conftest.c: In function 'pthreadtest_f':
conftest.c:27:5: warning: passing argument 1 of 'pthread_join' makes
integer from pointer without a cast
 pthread_join(&newthread, 0);
 ^
In file included fr

Re: [OMPI devel] [1.10.3rc3] Linux static link failure of fortran examples

2016-05-25 Thread Gilles Gouaillardet

Paul,


this works fine on RHEL7 but not on RHEL6

here is the relevant configure output

< checking for library containing clock_gettime... -lrt
---
> checking for library containing clock_gettime... none required


the reason is clock_gettime was moved from librt into libc between RHEL6 
and RHEL7



i made a proof of concept at 
https://github.com/open-mpi/ompi-release/pull/1191 i am still testing


(it also fixes a typo in pthread_join invokation)


Cheers,


Gilles



On 5/25/2016 2:15 PM, Paul Hargrove wrote:
The following error did *not* occur on the same system with the 
previous RC.


I have configured 1.10.3rc3 on a normal x86-64/Linux system with:
   --prefix=[...] --enable-debug --enable-static --disable-shared

When I try to use the resulting build to compile the examples:

$ make -k
mpicc -ghello_c.c -o hello_c
mpicc -gring_c.c -o ring_c
mpicc -g  connectivity_c.c   -o connectivity_c
make[1]: Entering directory 
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory 
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'

mpic++ -g  hello_cxx.cc   -o hello_cxx
mpic++ -g  ring_cxx.cc   -o ring_cxx
make[2]: Leaving directory 
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory 
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'

mpifort -g hello_mpifh.f -o hello_mpifh
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o): 
In function `ompi_warn_fork':

ompi_mpi_init.c:(.text+0x282): undefined reference to `pthread_atfork'
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o): 
In function `ptmalloc_init':

malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [hello_mpifh] Error 1
mpifort -g ring_mpifh.f -o ring_mpifh
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o): 
In function `ompi_warn_fork':

ompi_mpi_init.c:(.text+0x282): undefined reference to `pthread_atfork'
/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o): 
In function `ptmalloc_init':

malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [ring_mpifh] Error 1
make[2]: Leaving directory 
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'

make[1]: *** [mpi] Error 2
make[1]: Leaving directory 
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'

make: *** [all] Error 2

Comparing the configure output from RC2 and RC3 is informative:

 checking if word-sized integers must be word-size aligned... no
 checking if C compiler and POSIX threads work as is... no
 checking if C++ compiler and POSIX threads work as is... no
-checking if Fortran compiler and POSIX threads work as is... no
+checking if Fortran compiler and POSIX threads work as is... yes
 checking if C compiler and POSIX threads work with -Kthread... no
 checking if C compiler and POSIX threads work with -kthread... no
 checking if C compiler and POSIX threads work with -pthread... yes
 checking if C++ compiler and POSIX threads work with -Kthread... no
 checking if C++ compiler and POSIX threads work with -kthread... no
 checking if C++ compiler and POSIX threads work with -pthread... yes
-checking if Fortran compiler and POSIX threads work with
-Kthread... no
-checking if Fortran compiler and POSIX threads work with
-kthread... no
-checking if Fortran compiler and POSIX threads work with
-pthread... yes
 checking for pthread_mutexattr_setpshared... yes
 checking for pthread_condattr_setpshared... yes
 checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes


So, while RC2's configure determined that Fortran+pthreads needed 
-pthread, it appears that RC3 has instead determined that 
Fortran+pthreads "work as is".


Here is the related portion of config.log from RC2:

configure:63400: checking if Fortran compiler and POSIX threads
work as is
configure:63481: gcc -std=gnu99 -g -finline-functions
-fno-strict-aliasing -I. -c conftest.c
conftest.c: In function 'pthreadtest_f':
conftest.c:27:5: warning: passing argument 1 of 'pthread_join'
makes integer from pointer without a cast
 pthread_join(&newthread, 0);
 ^
In file included from conftest.c:3:0:
/usr/include/pthread.h:242:12: note: expected 'pthread_t' but
argument is of type 'pthread_t *'
 extern int pthread_join (pthread_t __th, void **__thread_return);
^
configure:63488: $? = 0
configure:63498: gfortran -g conftestf.f conftest.o -o conftest
 -lm -lutil
conftest.o: In function `pthreadtest_f':
conftest.c:(.text+0xa8): undefined reference to
`__pthread_

Re: [OMPI devel] [1.10.3rc3] Linux static link failure of fortran examples

2016-05-25 Thread Paul Hargrove
Thanks Gilles.

I will retest and follow up in the PR.

-Paul

On Tue, May 24, 2016 at 11:56 PM, Gilles Gouaillardet 
wrote:

> Paul,
>
>
> this works fine on RHEL7 but not on RHEL6
>
> here is the relevant configure output
>
> < checking for library containing clock_gettime... -lrt
> ---
> > checking for library containing clock_gettime... none required
>
>
> the reason is clock_gettime was moved from librt into libc between RHEL6
> and RHEL7
>
>
> i made a proof of concept at
> https://github.com/open-mpi/ompi-release/pull/1191 i am still testing
>
> (it also fixes a typo in pthread_join invokation)
>
>
> Cheers,
>
>
> Gilles
>
>
>
> On 5/25/2016 2:15 PM, Paul Hargrove wrote:
>
> The following error did *not* occur on the same system with the previous
> RC.
>
> I have configured 1.10.3rc3 on a normal x86-64/Linux system with:
>--prefix=[...] --enable-debug --enable-static --disable-shared
>
> When I try to use the resulting build to compile the examples:
>
> $ make -k
> mpicc -ghello_c.c   -o hello_c
> mpicc -gring_c.c   -o ring_c
> mpicc -gconnectivity_c.c   -o connectivity_c
> make[1]: Entering directory
> `/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
> make[2]: Entering directory
> `/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
> mpic++ -ghello_cxx.cc   -o hello_cxx
> mpic++ -gring_cxx.cc   -o ring_cxx
> make[2]: Leaving directory
> `/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
> make[2]: Entering directory
> `/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
> mpifort -g hello_mpifh.f -o hello_mpifh
> /scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
> In function `ompi_warn_fork':
> ompi_mpi_init.c:(.text+0x282): undefined reference to `pthread_atfork'
> /scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
> In function `ptmalloc_init':
> malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
> collect2: error: ld returned 1 exit status
> make[2]: *** [hello_mpifh] Error 1
> mpifort -g ring_mpifh.f -o ring_mpifh
> /scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
> In function `ompi_warn_fork':
> ompi_mpi_init.c:(.text+0x282): undefined reference to `pthread_atfork'
> /scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
> In function `ptmalloc_init':
> malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
> collect2: error: ld returned 1 exit status
> make[2]: *** [ring_mpifh] Error 1
> make[2]: Leaving directory
> `/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
> make[1]: *** [mpi] Error 2
> make[1]: Leaving directory
> `/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
> make: *** [all] Error 2
>
> Comparing the configure output from RC2 and RC3 is informative:
>
>  checking if word-sized integers must be word-size aligned... no
>  checking if C compiler and POSIX threads work as is... no
>  checking if C++ compiler and POSIX threads work as is... no
> -checking if Fortran compiler and POSIX threads work as is... no
> +checking if Fortran compiler and POSIX threads work as is... yes
>  checking if C compiler and POSIX threads work with -Kthread... no
>  checking if C compiler and POSIX threads work with -kthread... no
>  checking if C compiler and POSIX threads work with -pthread... yes
>  checking if C++ compiler and POSIX threads work with -Kthread... no
>  checking if C++ compiler and POSIX threads work with -kthread... no
>  checking if C++ compiler and POSIX threads work with -pthread... yes
> -checking if Fortran compiler and POSIX threads work with -Kthread... no
> -checking if Fortran compiler and POSIX threads work with -kthread... no
> -checking if Fortran compiler and POSIX threads work with -pthread... yes
>  checking for pthread_mutexattr_setpshared... yes
>  checking for pthread_condattr_setpshared... yes
>  checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes
>
>
> So, while RC2's configure determined that Fortran+pthreads needed
> -pthread, it appears that RC3 has instead determined that Fortran+pthreads
> "work as is".
>
> Here is the related portion of config.log from RC2:
>
> configure:63400: checking if Fortran compiler and POSIX threads work as is
> configure:63481: gcc -std=gnu99 -g -finline-functions -fno-strict-aliasing
> -I. -c conftest.c
> conftest.c: In function 'pthreadtest_f':
> conftest.c:27:5: warning: passing argument 1 of 'pthread_join' makes
> integer from pointer without a cast
>  pthread_join(&newthread, 0);
>  ^
> In file included from conftest.c:3:0:
> /usr/include/pthread.h:242:12: note: expected 'pthread_t' but argument is
> of type 'pthread_t *'
>  extern int pthread_join (pthread_t __th, void **__thread_return);
> ^
> configure:63488: $? = 0
> configure

Re: [OMPI devel] [1.10.3rc3] Linux static link failure of fortran examples

2016-05-25 Thread Gilles Gouaillardet

Paul,


please disregard this PR for now, i will make a new one shortly ...


Cheers,


Gilles


On 5/25/2016 4:25 PM, Paul Hargrove wrote:

Thanks Gilles.

I will retest and follow up in the PR.

-Paul

On Tue, May 24, 2016 at 11:56 PM, Gilles Gouaillardet 
mailto:gil...@rist.or.jp>> wrote:


Paul,


this works fine on RHEL7 but not on RHEL6

here is the relevant configure output

< checking for library containing clock_gettime... -lrt
---
> checking for library containing clock_gettime... none required


the reason is clock_gettime was moved from librt into libc between
RHEL6 and RHEL7


i made a proof of concept at
https://github.com/open-mpi/ompi-release/pull/1191 i am still testing

(it also fixes a typo in pthread_join invokation)


Cheers,


Gilles



On 5/25/2016 2:15 PM, Paul Hargrove wrote:

The following error did *not* occur on the same system with the
previous RC.

I have configured 1.10.3rc3 on a normal x86-64/Linux system with:
   --prefix=[...] --enable-debug --enable-static --disable-shared

When I try to use the resulting build to compile the examples:

$ make -k
mpicc -ghello_c.c   -o hello_c
mpicc -gring_c.c   -o ring_c
mpicc -gconnectivity_c.c   -o connectivity_c
make[1]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
mpic++ -ghello_cxx.cc   -o hello_cxx
mpic++ -gring_cxx.cc   -o ring_cxx
make[2]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
mpifort -g hello_mpifh.f -o hello_mpifh

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
In function `ompi_warn_fork':
ompi_mpi_init.c:(.text+0x282): undefined reference to
`pthread_atfork'

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
In function `ptmalloc_init':
malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [hello_mpifh] Error 1
mpifort -g ring_mpifh.f -o ring_mpifh

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
In function `ompi_warn_fork':
ompi_mpi_init.c:(.text+0x282): undefined reference to
`pthread_atfork'

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
In function `ptmalloc_init':
malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [ring_mpifh] Error 1
make[2]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[1]: *** [mpi] Error 2
make[1]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make: *** [all] Error 2

Comparing the configure output from RC2 and RC3 is informative:

 checking if word-sized integers must be word-size aligned... no
 checking if C compiler and POSIX threads work as is... no
 checking if C++ compiler and POSIX threads work as is... no
-checking if Fortran compiler and POSIX threads work as is... no
+checking if Fortran compiler and POSIX threads work as is... yes
 checking if C compiler and POSIX threads work with
-Kthread... no
 checking if C compiler and POSIX threads work with
-kthread... no
 checking if C compiler and POSIX threads work with
-pthread... yes
 checking if C++ compiler and POSIX threads work with
-Kthread... no
 checking if C++ compiler and POSIX threads work with
-kthread... no
 checking if C++ compiler and POSIX threads work with
-pthread... yes
-checking if Fortran compiler and POSIX threads work with
-Kthread... no
-checking if Fortran compiler and POSIX threads work with
-kthread... no
-checking if Fortran compiler and POSIX threads work with
-pthread... yes
 checking for pthread_mutexattr_setpshared... yes
 checking for pthread_condattr_setpshared... yes
 checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes


So, while RC2's configure determined that Fortran+pthreads needed
-pthread, it appears that RC3 has instead determined that
Fortran+pthreads "work as is".

Here is the related portion of config.log from RC2:

configure:63400: checking if Fortran compiler and POSIX
threads work as is
configure:63481: gcc -std=gnu99 -g -finline-functions
-fno-strict-aliasi

Re: [OMPI devel] [1.10.3rc3] Linux static link failure of fortran examples

2016-05-25 Thread Gilles Gouaillardet

Paul,


here it is https://github.com/open-mpi/ompi-release/pull/1192


Thanks !


Gilles

On 5/25/2016 4:42 PM, Gilles Gouaillardet wrote:


Paul,


please disregard this PR for now, i will make a new one shortly ...


Cheers,


Gilles


On 5/25/2016 4:25 PM, Paul Hargrove wrote:

Thanks Gilles.

I will retest and follow up in the PR.

-Paul

On Tue, May 24, 2016 at 11:56 PM, Gilles Gouaillardet 
 wrote:


Paul,


this works fine on RHEL7 but not on RHEL6

here is the relevant configure output

< checking for library containing clock_gettime... -lrt
---
> checking for library containing clock_gettime... none required


the reason is clock_gettime was moved from librt into libc
between RHEL6 and RHEL7


i made a proof of concept at
https://github.com/open-mpi/ompi-release/pull/1191 i am still testing

(it also fixes a typo in pthread_join invokation)


Cheers,


Gilles



On 5/25/2016 2:15 PM, Paul Hargrove wrote:

The following error did *not* occur on the same system with the
previous RC.

I have configured 1.10.3rc3 on a normal x86-64/Linux system with:
   --prefix=[...] --enable-debug --enable-static --disable-shared

When I try to use the resulting build to compile the examples:

$ make -k
mpicc -ghello_c.c   -o hello_c
mpicc -gring_c.c   -o ring_c
mpicc -gconnectivity_c.c   -o connectivity_c
make[1]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
mpic++ -ghello_cxx.cc   -o hello_cxx
mpic++ -gring_cxx.cc   -o ring_cxx
make[2]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[2]: Entering directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
mpifort -g hello_mpifh.f -o hello_mpifh

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
In function `ompi_warn_fork':
ompi_mpi_init.c:(.text+0x282): undefined reference to
`pthread_atfork'

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
In function `ptmalloc_init':
malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [hello_mpifh] Error 1
mpifort -g ring_mpifh.f -o ring_mpifh

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libmpi.a(ompi_mpi_init.o):
In function `ompi_warn_fork':
ompi_mpi_init.c:(.text+0x282): undefined reference to
`pthread_atfork'

/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/INST/lib/libopen-pal.a(lt1-malloc.o):
In function `ptmalloc_init':
malloc.c:(.text+0x5f3): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[2]: *** [ring_mpifh] Error 1
make[2]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make[1]: *** [mpi] Error 2
make[1]: Leaving directory
`/scratch/phargrov/OMPI/openmpi-1.10.3rc3-linux-x86_64-static/BLD/examples'
make: *** [all] Error 2

Comparing the configure output from RC2 and RC3 is informative:

 checking if word-sized integers must be word-size aligned... no
 checking if C compiler and POSIX threads work as is... no
 checking if C++ compiler and POSIX threads work as is... no
-checking if Fortran compiler and POSIX threads work as is... no
+checking if Fortran compiler and POSIX threads work as
is... yes
 checking if C compiler and POSIX threads work with
-Kthread... no
 checking if C compiler and POSIX threads work with
-kthread... no
 checking if C compiler and POSIX threads work with
-pthread... yes
 checking if C++ compiler and POSIX threads work with
-Kthread... no
 checking if C++ compiler and POSIX threads work with
-kthread... no
 checking if C++ compiler and POSIX threads work with
-pthread... yes
-checking if Fortran compiler and POSIX threads work with
-Kthread... no
-checking if Fortran compiler and POSIX threads work with
-kthread... no
-checking if Fortran compiler and POSIX threads work with
-pthread... yes
 checking for pthread_mutexattr_setpshared... yes
 checking for pthread_condattr_setpshared... yes
 checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes


So, while RC2's configure determined that Fortran+pthreads
needed -pthread, it appears that RC3 has instead determined that
Fortran+pthreads "work as is".

Here is the related portion of config.log from RC2:

configure:63400: checking if Fortran compiler a

Re: [OMPI devel] v1.10.3rc3 out for test

2016-05-25 Thread Burette, Yohann
Hi Ralph,

Just a quick note to let you know that I ran this rc3 with the OFI MTL on our 
PSM nodes. No issue to report.
I ran both shared and static builds under RHEL7.

Hope this helps,
Yohann

From: devel [mailto:devel-boun...@open-mpi.org] On Behalf Of Ralph Castain
Sent: Tuesday, May 24, 2016 8:49 PM
To: Open MPI Developers 
Subject: [OMPI devel] v1.10.3rc3 out for test

Hi folks

I believe this is ready for final test now. Please give it a whirl and let us 
know!

https://www.open-mpi.org/software/ompi/v1.10/

Ralph



[OMPI devel] [1.10.3.rc3] test results summary

2016-05-25 Thread Paul Hargrove
Sometime  earlier today while I was busy in meetings, my tests of the
 1.10.3rc3 tarball completed.

The two issues I had reported in RC2 did not occur with RC3.

The issue with static linking of Fortran was the only issue I encountered,
and I believe that Gilles' PR to fix that has already been merged.

-Paul [gleefully breaking Open MPI since  LAM/MPI 6.8]


-- 
Paul H. Hargrove  phhargr...@lbl.gov
Computer Languages & Systems Software (CLaSS) Group
Computer Science Department   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory Fax: +1-510-486-6900


Re: [OMPI devel] [1.10.3.rc3] test results summary

2016-05-25 Thread Ralph Castain
Thanks Paul!

> On May 25, 2016, at 7:39 PM, Paul Hargrove  wrote:
> 
> Sometime  earlier today while I was busy in meetings, my tests of the  
> 1.10.3rc3 tarball completed. 
> 
> The two issues I had reported in RC2 did not occur with RC3. 
> 
> The issue with static linking of Fortran was the only issue I encountered, 
> and I believe that Gilles' PR to fix that has already been merged. 
> 
> -Paul [gleefully breaking Open MPI since  LAM/MPI 6.8]
> 
> 
> -- 
> Paul H. Hargrove  phhargr...@lbl.gov 
> 
> Computer Languages & Systems Software (CLaSS) Group
> Computer Science Department   Tel: +1-510-495-2352
> Lawrence Berkeley National Laboratory Fax: +1-510-486-6900
> 
> ___
> devel mailing list
> de...@open-mpi.org
> Subscription: https://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post: 
> http://www.open-mpi.org/community/lists/devel/2016/05/19033.php