[gmx-users] build nuance in gmx5 (avoiding "file INSTALL cannot find gmx")

Mark Abraham mark.j.abraham at gmail.com
Fri May 22 13:53:53 CEST 2015


Hi,

On Thu, May 21, 2015 at 5:50 PM Christopher Neale <
chris.neale at alum.utoronto.ca> wrote:

> Dear Szilárd:
>
> I report it only because it is allowed in gmx4 builds (or at least it
> works, I am not sure whether or not is it "allowed").
>

Along with the transition to the wrapper binary in 5.0, we changed where
the binaries are placed in the build tree before they are installed, and
this seems to interact badly in your case with how CMake install works
(because both refer to the same "bin" subdirectory). We never intended
people to try to do this, and I have seen someone else on this list have
problems with it, so I have prepared a patch to stop people doing this.

I move the source because I often have many modified source trees that I
> rename to keep things straight.
>
> The quick and dirty method that you cite presumes that one has root
> access, which is very unlikely on the places that most simulations are run.
>
> The
> http://www.gromacs.org/Documentation/Installation_Instructions_5.0#typical-gromacs-installation
> section below that does have a note about "-DCMAKE_INSTALL_PREFIX=xxx to
> install GROMACS to a non-standard location (default /usr/local/gromacs)"
> but that gives no suggestions on how to use it and based on my experience I
> presume that "-DCMAKE_INSTALL_PREFIX=$(pwd)" would give a similar error if
> applied to the "quick and dirty" method.
>

There's several mentions of CMAKE_INSTALL_PREFIX further down in the
install guide, and the point of the "quick and dirty" and "typical build"
sections is to give people a way to know important things without a big
pile of details. I have reorganized a bit at
https://gerrit.gromacs.org/#/c/4647/ so there can be a link from the
typical build to some discussion of what to do, and text to suggest people
do not try Chris's approach.


> My intention is not to try to get gromacs to change the build procedure.
> Just to report something that worked once that no longer works and to
> include a snippit from the relevant error message so that it is searchable.
>

Thanks,

Mark


> Thank you,
> Chris.
>
> ________________________________________
> From: gromacs.org_gmx-users-bounces at maillist.sys.kth.se <
> gromacs.org_gmx-users-bounces at maillist.sys.kth.se> on behalf of Szilárd
> Páll <pall.szilard at gmail.com>
> Sent: 21 May 2015 11:24
> To: Discussion list for GROMACS users
> Cc: gromacs.org_gmx-users at maillist.sys.kth.se
> Subject: Re: [gmx-users] build nuance in gmx5 (avoiding "file INSTALL
> cannot find gmx")
>
> You can't install into the build tree, AFAIK that's not allowed!
> Install into a clean target directory instead.
>
> Also, you "mkdir source; mv * source" step is just weird. Why move the
> source around? Instead you can simply create a build directory - this
> can even be in the source tree just as the uiqck and dirty install
> steps suggest:
>
> http://www.gromacs.org/Documentation/Installation_Instructions_5.0#quick-and-dirty-installation
>
> --
> Szilárd
>
>
> On Thu, May 21, 2015 at 5:11 PM, Christopher Neale
> <chris.neale at alum.utoronto.ca> wrote:
> > Dear Users:
> >
> > This is just a note about compiling gromacs 5 so that the solution can
> be found by others if they need it.
> >
> > I used to compile gromacs like this:
> >
> > download and unpack tarball
> > cd gromacs-5.0.5
> > mkdir source
> > mv * source
> > mkdir exec
> > cd exec
> > ** run my build script from here, using CMAKE_INSTALL_PREFIX=$(pwd)
> >
> > However, that no longer works. What happens is that "make" creates
> ./bin/gmx and then "make install" removes ./bin/gmx and then complains that
> it does not exist:
> >
> > CMake Error at src/programs/cmake_install.cmake:42 (file):
> >   file INSTALL cannot find
> >   "/project2/p/pomes/cneale/GPC/exe/intel/gromacs-5.0.5/exec/bin/gmx".
> > Call Stack (most recent call first):
> >   src/cmake_install.cmake:40 (include)
> >   cmake_install.cmake:48 (include)
> >
> > My solution was to build in a separate directory from either the source
> or the executable:
> > download and unpack tarball
> > cd gromacs-5.0.5
> > mkdir source
> > mv * source
> > mkdir exec build
> > cd build
> > ** run my build script from here, using
> CMAKE_INSTALL_PREFIX=$(pwd)/../exec
> >
> > Perhaps this is standard practice. Anyway, my original procedure works
> for gmx4.6.7 but not gmx5.0.5 so I thought I would report it.
> >
> > Note that this is separate from the issue that some have reported where
> a CMAKE_INSTALL_PREFIX using $(pwd) did not install but using the explicit
> path worked (I tested the explicit paths and got the same error that I
> report above).
> >
> > Chris.
> >
> >
> > --
> > Gromacs Users mailing list
> >
> > * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
> >
> > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >
> > * For (un)subscribe requests visit
> > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
>


More information about the gromacs.org_gmx-users mailing list