[gmx-users] GROMACS 4.6.3 Static Linking

Mark Abraham mark.j.abraham at gmail.com
Thu Jul 25 17:55:49 CEST 2013


That combo is supposed to generate a CMake warning.

I also get a warning during linking that some shared library will have
to provide some function (getpwuid?) at run time, but the binary is
static.

Mark

On Thu, Jul 25, 2013 at 4:21 PM, Andrew R Turner <a.turner at epcc.ed.ac.uk> wrote:
> Mark,
>
> A bit of testing has revealed that it is the "-DGMX_PREFER_STATIC_LIBS=ON"
> flag that makes the difference. With this flag you end up with dynamic
> executables that do not work (I think due to some glibc problem I have not
> yet tracked down) whereas if I exclude this option then I get working static
> executables.
>
> Thanks for all your help
> Andy
>
>
> Quoting Mark Abraham <mark.j.abraham at gmail.com> on Thu, 25 Jul 2013 14:18:35
> +0200:
>
>> Vitaly has it upside down - it is normally required to build a static
>> binary on Crays.
>>
>> cmake .. -DBUILD_SHARED_LIBS=off just works for building static
>> binaries for me with 4.6.3 on lindgren, a Cray XE6, when using
>> PrgEnv-gnu/4.0.46
>>
>> Mark
>>
>> On Wed, Jul 24, 2013 at 8:58 AM, Andrew R Turner <a.turner at epcc.ed.ac.uk>
>> wrote:
>>>
>>> Hi Vitaly,
>>>
>>> Impossible just for v4.6.3? It was certainly possible to create static
>>> executables for a Cray XE using v4.6.1 (I know, because I have done it).
>>> I
>>> followed the same procedure for 4.6.3 and have only managed to get
>>> dynamic
>>> executables (which do not work) hence my question.
>>>
>>> I will have more of a dig into the build procedure but just wondered if
>>> anyone was aware of anything that has changed between these two minor
>>> versions (probably in the build process) that could have precipitated
>>> this
>>> change in behaviour.
>>>
>>> Cheers
>>> Andy
>>>
>>>
>>>
>>> Quoting "Dr. Vitaly Chaban" <vvchaban at gmail.com> on Sat, 20 Jul 2013
>>> 09:42:41 +0200:
>>>
>>>> Soneone said here that static versions are impossible for Cray...
>>>>
>>>>
>>>>
>>>> Dr. Vitaly V. Chaban
>>>>
>>>>
>>>> On Fri, Jul 19, 2013 at 12:55 PM, Andrew R Turner
>>>> <a.turner at epcc.ed.ac.uk>wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> I am having problems creating static versions of the GROMACS binaries
>>>>> for
>>>>> a Cray XE6 (www.hector.ac.uk). The build process I am using is
>>>>> documented
>>>>> at:
>>>>>
>>>>> http://www.hector.ac.uk/**support/documentation/**
>>>>>
>>>>>
>>>>> software/gromacs/compiling_4-**6-1_phase3.php<http://www.hector.ac.uk/support/documentation/software/gromacs/compiling_4-6-1_phase3.php>
>>>>>
>>>>> and successfully produced static binaries for 4.6.1. Has something
>>>>> changed
>>>>> in the new version?
>>>>>
>>>>> In particular, I am setting:
>>>>>
>>>>> -DCMAKE_SKIP_RPATH=YES
>>>>> -DBUILD_SHARED_LIBS=OFF
>>>>> -DGMX_PREFER_STATIC_LIBS=ON
>>>>> -DCMAKE_C_FLAGS="-static -O3 -ftree-vectorize -ffast-math
>>>>> -funroll-loops"
>>>>> -DCMAKE_CXX_FLAGS="-static -O3 -ftree-vectorize -ffast-math
>>>>> -funroll-loops"
>>>>>
>>>>> but still get dynamic executables:
>>>>>
>>>>> gmx at hector-xe6-5:~/4.6.3-**phase3/bin> ldd grompp
>>>>>         linux-vdso.so.1 =>  (0x00007fff00da2000)
>>>>>         libm.so.6 => /lib64/libm.so.6 (0x00007f50dc58f000)
>>>>>         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f50dc371000)
>>>>>         libAtpSigHandler.so.0 =>
>>>>> /opt/cray/lib64/**libAtpSigHandler.so.0
>>>>> (0x00007f50dc16b000)
>>>>>         libgfortran.so.3 =>
>>>>> /opt/gcc/4.7.2/snos/lib64/**libgfortran.so.3
>>>>> (0x00007f50dbe54000)
>>>>>         libscicpp_gnu.so.2 => /opt/cray/lib64/libscicpp_gnu.**so.2
>>>>> (0x00007f50dbc4a000)
>>>>>         libsci_gnu_mp.so.2 => /opt/cray/lib64/libsci_gnu_mp.**so.2
>>>>> (0x00007f50d72ec000)
>>>>>         libstdc++.so.6 => /opt/gcc/4.7.2/snos/lib64/**libstdc++.so.6
>>>>> (0x00007f50d6fdf000)
>>>>>         libfftw3_mpi.so.3 => /opt/cray/lib64/libfftw3_mpi.**so.3
>>>>> (0x00007f50d6dc6000)
>>>>>         libfftw3f_mpi.so.3 => /opt/cray/lib64/libfftw3f_mpi.**so.3
>>>>> (0x00007f50d6bae000)
>>>>>         libfftw3_threads.so.3 =>
>>>>> /opt/cray/lib64/libfftw3_**threads.so.3
>>>>> (0x00007f50d69a6000)
>>>>>         libfftw3f_threads.so.3 =>
>>>>> /opt/cray/lib64/libfftw3f_**threads.so.3
>>>>> (0x00007f50d679d000)
>>>>>         libfftw3.so.3 => /opt/cray/lib64/libfftw3.so.3
>>>>> (0x00007f50d63a2000)
>>>>>         libfftw3f.so.3 => /opt/cray/lib64/libfftw3f.so.3
>>>>> (0x00007f50d5f7c000)
>>>>>         libmpich_gnu_47.so.1 => /opt/cray/lib64/libmpich_gnu_**47.so.1
>>>>> (0x00007f50d5add000)
>>>>>         libmpichf90_gnu_47.so.1 =>
>>>>> /opt/cray/lib64/libmpichf90_**gnu_47.so.1
>>>>> (0x00007f50d58da000)
>>>>>         libmpl.so.0 => /opt/cray/lib64/libmpl.so.0 (0x00007f50d56d5000)
>>>>>         librt.so.1 => /lib64/librt.so.1 (0x00007f50d54cb000)
>>>>>         libxpmem.so.0 => /opt/cray/xpmem/default/lib64/**libxpmem.so.0
>>>>> (0x00007f50d52c9000)
>>>>>         libdmapp.so.1 => /opt/cray/dmapp/default/lib64/**libdmapp.so.1
>>>>> (0x00007f50d5092000)
>>>>>         libugni.so.0 => /opt/cray/ugni/default/lib64/**libugni.so.0
>>>>> (0x00007f50d4e72000)
>>>>>         libpmi.so.0 => /opt/cray/pmi/default/lib64/**libpmi.so.0
>>>>> (0x00007f50d4c51000)
>>>>>         libalpslli.so.0 => /usr/lib/alps/libalpslli.so.0
>>>>> (0x00007f50d4a4e000)
>>>>>         libalpsutil.so.0 => /usr/lib/alps/libalpsutil.so.0
>>>>> (0x00007f50d4849000)
>>>>>         libudreg.so.0 => /opt/cray/udreg/default/lib64/**libudreg.so.0
>>>>> (0x00007f50d4641000)
>>>>>         libgomp.so.1 => /opt/gcc/4.7.2/snos/lib64/**libgomp.so.1
>>>>> (0x00007f50d4432000)
>>>>>         libc.so.6 => /lib64/libc.so.6 (0x00007f50d40d3000)
>>>>>         libgcc_s.so.1 => /opt/gcc/4.7.2/snos/lib64/**libgcc_s.so.1
>>>>> (0x00007f50d3ebd000)
>>>>>         /lib/ld64.so.1 => /lib64/ld-linux-x86-64.so.2
>>>>> (0x00007f50dc812000)
>>>>>         libquadmath.so.0 =>
>>>>> /opt/gcc/4.7.2/snos/lib64/**libquadmath.so.0
>>>>> (0x00007f50d3c87000)
>>>>>         libcray_memcpy.so.0 => /opt/cray/lib64/libcray_**memcpy.so.0
>>>>> (0x00007f50d3a84000)
>>>>>         libopa.so.1 => /opt/cray/lib64/libopa.so.1 (0x00007f50d3882000)
>>>>>         librca.so.0 => /opt/cray/rca/default/lib64/**librca.so.0
>>>>> (0x00007f50d367d000)
>>>>>         libdl.so.2 => /lib64/libdl.so.2 (0x00007f50d3479000)
>>>>>
>>>>> Any ideas?
>>>>> Andy
>>>>>
>>>>>
>>>>> ==============================**===============
>>>>>         Dr Andrew R. Turner
>>>>>      e: a.turner at epcc.ed.ac.uk
>>>>>  skype: aturner-epcc
>>>>>      t: +44 (0)131 651 3578
>>>>>      p: EPCC, University of Edinburgh EH9 3JZ
>>>>> ==============================**===============
>>>>>
>>>>> --
>>>>> The University of Edinburgh is a charitable body, registered in
>>>>> Scotland, with registration number SC005336.
>>>>>
>>>>>
>>>>> --
>>>>> gmx-users mailing list    gmx-users at gromacs.org
>>>>>
>>>>>
>>>>> http://lists.gromacs.org/**mailman/listinfo/gmx-users<http://lists.gromacs.org/mailman/listinfo/gmx-users>
>>>>> * Please search the archive at http://www.gromacs.org/**
>>>>>
>>>>>
>>>>> Support/Mailing_Lists/Search<http://www.gromacs.org/Support/Mailing_Lists/Search>before
>>>>> posting!
>>>>> * Please don't post (un)subscribe requests to the list. Use thewww
>>>>> interface or send it to gmx-users-request at gromacs.org.
>>>>> * Can't post? Read
>>>>>
>>>>> http://www.gromacs.org/**Support/Mailing_Lists<http://www.gromacs.org/Support/Mailing_Lists>
>>>>>
>>>> --
>>>> gmx-users mailing list    gmx-users at gromacs.org
>>>> http://lists.gromacs.org/mailman/listinfo/gmx-users
>>>> * Please search the archive at
>>>> http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
>>>> * Please don't post (un)subscribe requests to the list. Use the
>>>> www interface or send it to gmx-users-request at gromacs.org.
>>>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>>>>
>>>>
>>>
>>>
>>>
>>> =============================================
>>>
>>>         Dr Andrew R. Turner
>>>      e: a.turner at epcc.ed.ac.uk
>>>  skype: aturner-epcc
>>>      t: +44 (0)131 651 3578
>>>      p: EPCC, University of Edinburgh EH9 3JZ
>>> =============================================
>>>
>>>
>>> --
>>> The University of Edinburgh is a charitable body, registered in
>>> Scotland, with registration number SC005336.
>>>
>>>
>>> --
>>> gmx-users mailing list    gmx-users at gromacs.org
>>> http://lists.gromacs.org/mailman/listinfo/gmx-users
>>> * Please search the archive at
>>> http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
>>> * Please don't post (un)subscribe requests to the list. Use thewww
>>> interface
>>> or send it to gmx-users-request at gromacs.org.
>>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>>
>> --
>> gmx-users mailing list    gmx-users at gromacs.org
>> http://lists.gromacs.org/mailman/listinfo/gmx-users
>> * Please search the archive at
>> http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
>> * Please don't post (un)subscribe requests to the list. Use the
>> www interface or send it to gmx-users-request at gromacs.org.
>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>>
>>
>
>
>
> =============================================
>         Dr Andrew R. Turner
>      e: a.turner at epcc.ed.ac.uk
>  skype: aturner-epcc
>      t: +44 (0)131 651 3578
>      p: EPCC, University of Edinburgh EH9 3JZ
> =============================================
>
> --
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>
>
> --
> gmx-users mailing list    gmx-users at gromacs.org
> http://lists.gromacs.org/mailman/listinfo/gmx-users
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
> * Please don't post (un)subscribe requests to the list. Use thewww interface
> or send it to gmx-users-request at gromacs.org.
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists



More information about the gromacs.org_gmx-users mailing list