"bzero" should be avoided for maximum portability.  Just use "memset" instead.  
Even older versions of GCC know how to spot the 0 constant and substitute the 
right compiler intrinsic(s), assuming they are available for the target 
platform.

http://pubs.opengroup.org/onlinepubs/009695399/functions/bzero.html

-Dave

On Sep 19, 2013, at 8:44 AM, Ralph Castain <r...@open-mpi.org> wrote:

> Can you please do a "man bzero" and tell us what include file it says we need?
> 
> 
> On Sep 19, 2013, at 3:33 AM, Siegmar Gross 
> <siegmar.gr...@informatik.hs-fulda.de> wrote:
> 
>> Hello Josh,
>> 
>> I just tried to compile openmpi-1.9a1r29209 with gcc-4.8.0 and get the
>> following error on Solaris sparc and Solars x86_64.
>> 
>> sunpc1 openmpi-1.9a1r29209-SunOS.x86_64.64_gcc 24 tail -14 
>> log.make.SunOS.x86_64.64_gcc
>> make[2]: Entering directory
>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29209-SunOS.x86_64.64_gcc/oshmem'
>> CC       op/op.lo
>> CC       proc/proc.lo
>> ../../openmpi-1.9a1r29209/oshmem/proc/proc.c: In function 
>> 'oshmem_proc_construct':
>> ../../openmpi-1.9a1r29209/oshmem/proc/proc.c:48:5: error: implicit
>> declaration of function 'bzero' [-Werror=implicit-function-declaration]
>>    bzero(proc->proc_endpoints, sizeof(proc->proc_endpoints));
>>    ^
>> ../../openmpi-1.9a1r29209/oshmem/proc/proc.c:48:5: error: incompatible 
>> implicit
>> declaration of built-in function 'bzero' [-Werror]
>> cc1: all warnings being treated as errors
>> make[2]: *** [proc/proc.lo] Error 1
>> make[2]: Leaving directory
>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29209-SunOS.x86_64.64_gcc/oshmem'
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory
>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29209-SunOS.x86_64.64_gcc/oshmem'
>> make: *** [all-recursive] Error 1
>> 
>> 
>> Kind regards
>> 
>> Siegmar
>> 
>> 
>> 
>> 
>>>> Try now, please.
>>> 
>>> I can build openmpi-1.9a1r29209 with my Sun C compiler on my platforms.
>>> Thank you very much for your help! I can even use it on Linux and
>>> I still get a Bus Error on Solaris, but that is a different problem.
>>> I'm happy that I have at least one working platform again.
>>> 
>>> Kind regards and thank you very much once more
>>> 
>>> Siegmar
>>> 
>>> 
>>> 
>>>> -----Original Message-----
>>>> From: Siegmar Gross [mailto:siegmar.gr...@informatik.hs-fulda.de] 
>>>> Sent: Wednesday, September 18, 2013 6:32 AM
>>>> To: de...@open-mpi.org
>>>> Cc: siegmar.gr...@informatik.hs-fulda.de; Joshua Ladd
>>>> Subject: RE: [OMPI users] Error in openmpi-1.9a1r29179
>>>> 
>>>> Hello Josh,
>>>> 
>>>> thank you very much for your help. Unfortunately I have still a problem to 
>>> build Open MPI.
>>>> 
>>>>> I pushed a bunch of fixes, can you please try now.
>>>> 
>>>> I tried to build /openmpi-1.9a1r29197 on my platforms and now I get on all 
>>> platforms the following error.
>>>> 
>>>> 
>>>> linpc1 openmpi-1.9a1r29197-Linux.x86_64.64_cc 117 tail -22 
>>> log.make.Linux.x86_64.64_cc
>>>> CC       base/memheap_base_alloc.lo
>>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/amd64/atomic.h", 
>>>> line 
>>> 136: warning: parameter in inline asm statement unused: %3 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/amd64/atomic.h", 
>>> line 
>>> 182: warning: parameter in inline asm statement unused: %2 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/amd64/atomic.h", 
>>> line 
>>> 203: warning: parameter in inline asm statement unused: %2 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/amd64/atomic.h", 
>>> line 
>>> 224: warning: parameter in inline asm statement unused: %2 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/amd64/atomic.h", 
>>> line 
>>> 245: warning: parameter in inline asm statement unused: %2 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/atomic_impl.h", line 
>>> 167: 
>>> warning: statement not reached 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/atomic_impl.h", line 
>>> 192: 
>>> warning: statement not reached 
>>> "../../../../openmpi-1.9a1r29197/opal/include/opal/sys/atomic_impl.h", line 
>>> 217: 
>>> warning: statement not reached 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/spml/spml.h", line 76: warning: 
>>> anonymous union declaration 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c",
>>>  
>>> line 112: warning: argument mismatch 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c",
>>>  
>>> line 119: warning: argument mismatch 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c",
>>>  
>>> line 124: warning: argument mismatch 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c",
>>>  
>>> line 248: warning: pointer to void or function used in arithmetic 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c",
>>>  
>>> line 286: syntax error before or at: | 
>>> "../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c",
>>>  
>>> line 300: warning: pointer to void or function used in arithmetic
>>>> cc: acomp failed for 
>>> ../../../../openmpi-1.9a1r29197/oshmem/mca/memheap/base/memheap_base_alloc.c
>>>> make[2]: *** [base/memheap_base_alloc.lo] Error 1
>>>> make[2]: Leaving directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29197-Linux.x86_64.64_cc/oshmem/mca/memh
>>> eap'
>>>> make[1]: *** [all-recursive] Error 1
>>>> make[1]: Leaving directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29197-Linux.x86_64.64_cc/oshmem'
>>>> make: *** [all-recursive] Error 1
>>>> 
>>>> 
>>>> Kind regards
>>>> 
>>>> Siegmar
>>>> 
>>>> 
>>>> 
>>>> 
>>>>> -----Original Message-----
>>>>> From: Jeff Squyres (jsquyres) [mailto:jsquy...@cisco.com]
>>>>> Sent: Tuesday, September 17, 2013 6:37 AM
>>>>> To: Siegmar Gross; Open MPI Developers List
>>>>> Cc: Joshua Ladd
>>>>> Subject: Re: [OMPI users] Error in openmpi-1.9a1r29179
>>>>> 
>>>>> ...moving over to the devel list...
>>>>> 
>>>>> Dave and I looked at this during a break in the EuroMPI conference, and 
>>> noticed several things:
>>>>> 
>>>>> 1. Some of the shmem interfaces are functions (i.e., return non-void) 
>>>>> and some are subroutines (i.e., return void).  They're currently all 
>>>>> using a single macro
>>>> to declare the interfaces, which assume functions.  So this macro is 
>>>> incorrect 
>>> for subroutines -- you really need 2 macros.
>>>>> 
>>>>> 2. The macro name is OMPI_GENERATE_FORTRAN_BINDINGS -- why isn't is 
>>> SHMEM_GENERATE_FORTRAN_BINDINGS?
>>>>> 
>>>>> 3. I notice that none of the Fortran interfaces are prototyped in 
>>>>> shmem.fh.  Why not? A shmem person here in Madrid mentioned that there 
>>>>> is supposed to be a
>>>> shmem.fh file and a shmem modulefile.
>>>>> 
>>>>> 
>>>>> On Sep 17, 2013, at 8:49 AM, Siegmar Gross 
>>> <siegmar.gr...@informatik.hs-fulda.de> wrote:
>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>> I tried to install openmpi-1.9a1r29179 on "openSuSE Linux 12.1", 
>>>>>> "Solaris 10 x86_64", and "Solaris 10 sparc" with "Sun C 5.12" in 
>>>>>> 64-bit mode. Unfortunately "make" breaks with the same error on all 
>>>>>> platforms.
>>>>>> 
>>>>>> tail -15 log.make.Linux.x86_64.64_cc
>>>>>> 
>>>>>> CCLD     libshmem_c.la
>>>>>> make[3]: Leaving directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29179-Linux.x86_64.64_cc/oshmem/shmem/c'
>>>>>> make[2]: Leaving directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29179-Linux.x86_64.64_cc/oshmem/shmem/c'
>>>>>> Making all in shmem/fortran
>>>>>> make[2]: Entering directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29179-Linux.x86_64.64_cc/oshmem/shmem/fo
>>> rtran'
>>>>>> CC       start_pes_f.lo
>>>>>> "../../../../openmpi-1.9a1r29179/oshmem/shmem/fortran/start_pes_f.c"
>>>>>> , line 16: void function cannot return value 
>>>>>> "../../../../openmpi-1.9a1r29179/oshmem/shmem/fortran/start_pes_f.c"
>>>>>> , line 16: void function cannot return value 
>>>>>> "../../../../openmpi-1.9a1r29179/oshmem/shmem/fortran/start_pes_f.c"
>>>>>> , line 16: void function cannot return value
>>>>>> cc: acomp failed for
>>>>>> ../../../../openmpi-1.9a1r29179/oshmem/shmem/fortran/start_pes_f.c
>>>>>> make[2]: *** [start_pes_f.lo] Error 1
>>>>>> make[2]: Leaving directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29179-Linux.x86_64.64_cc/oshmem/shmem/fo
>>> rtran'
>>>>>> make[1]: *** [all-recursive] Error 1
>>>>>> make[1]: Leaving directory 
>>> `/export2/src/openmpi-1.9/openmpi-1.9a1r29179-Linux.x86_64.64_cc/oshmem'
>>>>>> make: *** [all-recursive] Error 1
>>>>>> 
>>>>>> 
>>>>>> I configured with the following command.
>>>>>> 
>>>>>> ../openmpi-1.9a1r29179/configure 
>>>>>> --prefix=/usr/local/openmpi-1.9_64_cc
>>>>>> \
>>>>>> --libdir=/usr/local/openmpi-1.9_64_cc/lib64 \ 
>>>>>> --with-jdk-bindir=/usr/local/jdk1.7.0_07-64/bin \ 
>>>>>> --with-jdk-headers=/usr/local/jdk1.7.0_07-64/include \
>>>>>> JAVA_HOME=/usr/local/jdk1.7.0_07-64 \  LDFLAGS="-m64" \  CC="cc" 
>>>>>> CXX="CC" FC="f95" \  CFLAGS="-m64" CXXFLAGS="-m64 -library=stlport4" 
>>>>>> FCFLAGS="-m64" \  CPP="cpp" CXXCPP="cpp" \  CPPFLAGS="" CXXCPPFLAGS="" 
>>>>>> \  --enable-mpi-cxx \  --enable-cxx-exceptions \  --enable-mpi-java 
>>>>>> \ --enable-heterogeneous \  --enable-opal-multi-threads \ 
>>>>>> --enable-mpi-thread-multiple \  --with-threads=posix \ 
>>>>>> --with-hwloc=internal \  --without-verbs \  --without-udapl \ 
>>>>>> --without-sctp \
>>>>>> --with-wrapper-cflags=-m64 \
>>>>>> --enable-debug \
>>>>>> |& tee log.configure.$SYSTEM_ENV.$MACHINE_ENV.64_cc
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> I would be grateful if somebody can fix the bug. Thank you very much 
>>>>>> for any help in advance.
>>>>>> 
>>>>>> 
>>>>>> Kind regards
>>>>>> 
>>>>>> Siegmar
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> users mailing list
>>>>>> us...@open-mpi.org
>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>> 
>>>>> 
>>>>> --
>>>>> Jeff Squyres
>>>>> jsquy...@cisco.com
>>>>> For corporate legal information go to: 
>>>>> http://www.cisco.com/web/about/doing_business/legal/cri/
>>>>> 
>>>>> 
>>>> 
>>>> 
>>> 
>>> _______________________________________________
>>> devel mailing list
>>> de...@open-mpi.org
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> 
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

Reply via email to