Re: [AMBER] problem with building cpptraj in AmberTools19

From: A K <adk194.outlook.com>
Date: Thu, 15 Aug 2019 20:04:03 +0000

Thanks for your response! I tried again by loading a newer version of the gcc compilers using the command "module load compilers/gcc-7.2.0", but I still received errors. I'm not sure if maybe the compilers weren't detected? I'm trying to install ambertools19 on my university's remote server so I don't have the permissions to install using su or sudo. Is there something I need to modify to make sure that when compiling, it'll use the newer gcc compilers?

Also, is there a way to install or compile MMPBSA.py.MPI alone? Previously when I had installed Amber14 with AmberTools14, the installation for MMPBSA.py.MPI had failed while just MMPBSA.py seems to work. So I've been trying to reinstall Amber all over again just to use MMPBSA.py.MPI, but keep getting errors. For now, if I can at least get MMPBSA.py.MPI working for me, that would be really helpful for me!

I also tried modified the file you suggested, $AMBERHOME/AmberTools/src/Makefile, to skip cpptraj, but ran into the same exact error as last time:
> > ...
> > "CXX Energy.cpp
> > CXX EnsembleIn.cpp
> > CXX EnsembleIn_Multi.cpp
> > CXX EnsembleIn_Single.cpp
> > CXX EnsembleNavigator.cpp
> > CXX EnsembleOut.cpp
> > CXX EnsembleOut_Multi.cpp
> > CXX EnsembleOut_Single.cpp
> > CXX EnsembleOutList.cpp
> > CXX Ewald.cpp
> > CXX Ewald_ParticleMesh.cpp
> > helpme_standalone.h(2133): error: more than one instance of overloaded function "std::to_string" matches the argument list:
> > function "std::to_string(long long)"
> > function "std::to_string(unsigned long long)"
> > function "std::to_string(long double)"
> > argument types are: (int)
> > msg += std::to_string(derivativeLevel + 2);
> > ^
> > detected during:
> > instantiation of "void helpme::BSpline<Real>::update(short, Real, short, short) [with Real=double]" at line 2142
> > instantiation of "helpme::BSpline<Real>::BSpline(short, Real, short, short) [with Real=double]" at line 2279
> > instantiation of "helpme::SplineCacheEntry<Real>::SplineCacheEntry(int, int) [with Real=double]" at line 111 of "/usr/include/c++/4.4.7/ext/new_allocator.h"
> > instantiation of "void __gnu_cxx::new_allocator<_Tp>::construct(__gnu_cxx::new_allocator<_Tp>::pointer, _Args &&...) [with _Tp=helpme::SplineCacheEntry<double>, _Args=<int &, int &>]" at line 96 of "/usr/include/c++/4.4.7/bits/vector.tcc"
> > instantiation of "void std::vector<_Tp, _Alloc>::emplace_back(_Args &&...) [with _Tp=helpme::SplineCacheEntry<double>, _Alloc=std::allocator<helpme::SplineCacheEntry<double>>, _Args=<int &, int &>]" at line 2532
> > instantiation of "void helpme::PMEInstance<Real>::filterAtomsAndBuildSplineCache(int, const helpme::PMEInstance<Real>::RealMat &) [with Real=double]" at line 4205
> > instantiation of "Real helpme::PMEInstance<Real>::computeERec(int, const helpme::PMEInstance<Real>::RealMat &, const helpme::PMEInstance<Real>::RealMat &) [with Real=double]" at line 191 of "Ewald_ParticleMesh.cpp"
> >
> > helpme_standalone.h(2447): error: class "std::vector<std::pair<short, short>, std::allocator<std::pair<short, short>>>" has no member "shrink_to_fit"
> > splineIterator.shrink_to_fit();
> > ^
> > detected during:
> > instantiation of "void helpme::PMEInstance<Real>::common_init(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 4429
> > instantiation of "void helpme::PMEInstance<Real>::setup(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 179 of "Ewald_ParticleMesh.cpp"
> >
> > helpme_standalone.h(2451): error: class "std::vector<std::vector<std::pair<short, short>, std::allocator<std::pair<short, short>>>, std::allocator<std::vector<std::pair<short, short>, std::allocator<std::pair<short, short>>>>>" has no member "shrink_to_fit"
> > gridIterator.shrink_to_fit();
> > ^
> > detected during:
> > instantiation of "void helpme::PMEInstance<Real>::common_init(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 4429
> > instantiation of "void helpme::PMEInstance<Real>::setup(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 179 of "Ewald_ParticleMesh.cpp"
> >
> > compilation aborted for Ewald_ParticleMesh.cpp (code 2)
> > make[4]: *** [Ewald_ParticleMesh.o] Error 2
> > make[4]: Leaving directory `/home/amber18/AmberTools/src/cpptraj/src'
> > make[3]: *** [install] Error 2
> > make[3]: Leaving directory `/home/amber18/AmberTools/src/cpptraj'
> > make[2]: *** [build_cpptraj] Error 2
> > make[2]: Leaving directory `/home/amber18/AmberTools/src'
> > make[1]: *** [serial] Error 2
> > make[1]: Leaving directory `/home/amber18/AmberTools/src'
> > make: *** [install] Error 2"


On Jul 31, 2019 7:09 AM, Daniel Roe <daniel.r.roe.gmail.com> wrote:

Hi,

On Mon, Jul 29, 2019 at 1:50 PM A K <adk194.outlook.com> wrote:
>
> Thanks for your response! I checked my operating system and compiler information, and the output I got from 'uname -a' is "Linux login-1.******.edu 2.6.32-696.23.1.el6.centos.plus.x86_64 #1 SMP Wed Mar 14 11:51:06 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux" and the output from running 'gcc --version' is "gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)

Sorry - I misread your GCC version the first time as 4.7, not 4.4.7.
Unfortunately GCC 4.4.7 does not fully support the C++11 standard (see
https://gcc.gnu.org/projects/cxx-status.html#cxx11), and even though
you're using Intel 16 compilers, they use GCC headers etc on the
back-end - I think this is where the incompatibility is.

The best solution is to upgrade GCC (4.4.7 is seven years old at this
point). If you don't want to or can't do that, the easiest thing to do
may be to skip building cpptraj during the build of Amber (go into
$AMBERHOME/AmberTools/src/Makefile, search for the 'build_cpptraj:'
rule, and replace the line below it

    (cd cpptraj && $(MAKE) install)

with this

    .echo Skipping cpptraj

Make sure that line starts with a 'tab'.

Then if you need cpptraj you can configure it separately
($AMBERHOME/AmberTools/src/cpptraj && ./configure intel). Cpptraj's
configure should detect that C++11 support is broken, or if for some
reason it doesn't add the '-noc++11' option.

I'll have to work on making cpptraj inside AmberTools do a bit more
work when it comes to detecting c++11 issues. Thanks for the report.

-Dan

> Copyright (C) 2010 Free Software Foundation, Inc." The commands that I had used to install AmberTools19 were:
> module load compilers/intel
> module load tools/mpich-3.0.4-icc
> module list
> cd /home/
> tar xvfj AmberTools19.tar.bz2 # (Note: extracts in an # “amber18” directory)
> export AMBERHOME=/home/amber18
> cd $AMBERHOME
> ./configure intel
> source /home/amber18/amber.sh
> test -f /home/amber18/amber.sh
> make install
>
> Please let me know if there's any other info that I could provide that would be helpful!
>
> Thanks so much for your help!
>
>
>
> On Jul 24, 2019 2:01 PM, Daniel Roe <daniel.r.roe.gmail.com> wrote:
>
> Since compilation is failing for the HelPME library, I'm guessing this
> is related to a C++11 incompatibility. Unfortunately without knowing
> the OS, compilers/version or any other information, that's about as
> much as I can debug from here.
>
> -Dan
>
> On Wed, Jul 24, 2019 at 1:18 PM David Case <david.case.rutgers.edu> wrote:
> >
> > I'm just changing the subject line of this post, since the problem is
> > now with cpptraj compilation on AmberTools19. This might get the
> > attention of Dan (or someone) who would recognize the problem.
> >
> > That said, I'm sure people are going to want to know what operating
> > system and compiler you are using (e.g. outputs from 'uname -a' and
> > 'gcc --version').
> >
> > ...thx...dac
> >
> > ----- Forwarded message from A K <adk194.outlook.com> -----
> >
> > Date: Wed, 24 Jul 2019 01:10:21 +0000
> > From: A K <adk194.outlook.com>
> > To: David Case <david.case.rutgers.edu>
> > Subject: Re: [AMBER] Error with make test after installing Amber14 and
> > AmberTools15
> >
> > Thanks so much! After I continued on and ran the commands "source /home/amber18/amber.sh", "test -f /home/amber18/amber.sh", and then "make install", I ran into some errors with "make install." Towards the end, it shows these errors:
> >
> > ...
> > "CXX Energy.cpp
> > CXX EnsembleIn.cpp
> > CXX EnsembleIn_Multi.cpp
> > CXX EnsembleIn_Single.cpp
> > CXX EnsembleNavigator.cpp
> > CXX EnsembleOut.cpp
> > CXX EnsembleOut_Multi.cpp
> > CXX EnsembleOut_Single.cpp
> > CXX EnsembleOutList.cpp
> > CXX Ewald.cpp
> > CXX Ewald_ParticleMesh.cpp
> > helpme_standalone.h(2133): error: more than one instance of overloaded function "std::to_string" matches the argument list:
> > function "std::to_string(long long)"
> > function "std::to_string(unsigned long long)"
> > function "std::to_string(long double)"
> > argument types are: (int)
> > msg += std::to_string(derivativeLevel + 2);
> > ^
> > detected during:
> > instantiation of "void helpme::BSpline<Real>::update(short, Real, short, short) [with Real=double]" at line 2142
> > instantiation of "helpme::BSpline<Real>::BSpline(short, Real, short, short) [with Real=double]" at line 2279
> > instantiation of "helpme::SplineCacheEntry<Real>::SplineCacheEntry(int, int) [with Real=double]" at line 111 of "/usr/include/c++/4.4.7/ext/new_allocator.h"
> > instantiation of "void __gnu_cxx::new_allocator<_Tp>::construct(__gnu_cxx::new_allocator<_Tp>::pointer, _Args &&...) [with _Tp=helpme::SplineCacheEntry<double>, _Args=<int &, int &>]" at line 96 of "/usr/include/c++/4.4.7/bits/vector.tcc"
> > instantiation of "void std::vector<_Tp, _Alloc>::emplace_back(_Args &&...) [with _Tp=helpme::SplineCacheEntry<double>, _Alloc=std::allocator<helpme::SplineCacheEntry<double>>, _Args=<int &, int &>]" at line 2532
> > instantiation of "void helpme::PMEInstance<Real>::filterAtomsAndBuildSplineCache(int, const helpme::PMEInstance<Real>::RealMat &) [with Real=double]" at line 4205
> > instantiation of "Real helpme::PMEInstance<Real>::computeERec(int, const helpme::PMEInstance<Real>::RealMat &, const helpme::PMEInstance<Real>::RealMat &) [with Real=double]" at line 191 of "Ewald_ParticleMesh.cpp"
> >
> > helpme_standalone.h(2447): error: class "std::vector<std::pair<short, short>, std::allocator<std::pair<short, short>>>" has no member "shrink_to_fit"
> > splineIterator.shrink_to_fit();
> > ^
> > detected during:
> > instantiation of "void helpme::PMEInstance<Real>::common_init(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 4429
> > instantiation of "void helpme::PMEInstance<Real>::setup(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 179 of "Ewald_ParticleMesh.cpp"
> >
> > helpme_standalone.h(2451): error: class "std::vector<std::vector<std::pair<short, short>, std::allocator<std::pair<short, short>>>, std::allocator<std::vector<std::pair<short, short>, std::allocator<std::pair<short, short>>>>>" has no member "shrink_to_fit"
> > gridIterator.shrink_to_fit();
> > ^
> > detected during:
> > instantiation of "void helpme::PMEInstance<Real>::common_init(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 4429
> > instantiation of "void helpme::PMEInstance<Real>::setup(int, Real, int, int, int, int, Real, int) [with Real=double]" at line 179 of "Ewald_ParticleMesh.cpp"
> >
> > compilation aborted for Ewald_ParticleMesh.cpp (code 2)
> > make[4]: *** [Ewald_ParticleMesh.o] Error 2
> > make[4]: Leaving directory `/home/amber18/AmberTools/src/cpptraj/src'
> > make[3]: *** [install] Error 2
> > make[3]: Leaving directory `/home/amber18/AmberTools/src/cpptraj'
> > make[2]: *** [build_cpptraj] Error 2
> > make[2]: Leaving directory `/home/amber18/AmberTools/src'
> > make[1]: *** [serial] Error 2
> > make[1]: Leaving directory `/home/amber18/AmberTools/src'
> > make: *** [install] Error 2"
> >
> > What could be the cause of these errors? Thanks!
> >
> >
> > ----- End forwarded message -----
> >
> > --
> >
> > ====================================================================
> > David A. Case | david.case.rutgers.edu
> > Dept. of Chemistry & Chemical Biology |
> > Rutgers University | office: +1-848-445-5885
> > 174 Frelinghuysen Road, Rm. 208b | cell: +1-609-751-8668
> > Piscataway, NJ 08854 USA | web: casegroup.rutgers.edu
> > ====================================================================
> >
> > _______________________________________________
> > AMBER mailing list
> > AMBER.ambermd.org
> > http://lists.ambermd.org/mailman/listinfo/amber
>
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>
>


_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Aug 15 2019 - 13:30:02 PDT
Custom Search