Dear Christoph, Thanks for your suggestions and I am sorry for the late reply: I was travelling last two weeks and were not able to try your suggestions.
When running strings -a /path/to/libboost_program_options.so | grep GCC, I got: GCC_3.0 GCC: (GNU) 4.4.7 20120313 (Red Hat 4.4.7-11) GCC: (GNU) 6.1.0 _Unwind_Resume@@GCC_3.0 Does this means my boost is not installed by gcc-6.1? I don't why it shows several versions of gcc. Even when I compile the boost with ./bootstrap.sh --with-toolset=gcc, ./b2 --toolset=gcc-6.1.0, I got the same information. Also, you recommended me to install boost in another directory, but in this case, votca can not find the boost package even when I specified the path of boost header files and libraries as I mention before. Do you have any ideas on why this happens? The spack option has also been tried, while I also did not success to install votca-csg. The corresponding on screen information and log files are attached. Besides, it seems votca-ctp is not involved in spack (I tried to append votca-ctp after the commend but it says it can not find the votca-ctp package), while this is actually the one I needed. Your further help is greatly appreciated. Best regards, Shiyun 在 2017年5月28日星期日 UTC+8上午5:24:27,Christoph Junghans写道: > > 2017-05-26 21:02 GMT-06:00 Shiyun Xiong <[email protected] <javascript:>>: > > > Dear Christoph, > > > > Thanks a lot for providing the solutions. > > For the first point of using the system gcc and boost: my system gcc > > (/usr/bin/gcc) version is 4.4.7 released in 2012, hence it is rather > old. > > Also, I can not find (I don't know) where is the system boost header > files > > although I can find the system boost library is in the /usr/lib64/ fold. > > Most importantly, as mentioned in my first post, when the boost paths > are > > specified during the votca installation, it says can not find the > required > > boost package. As a result, I haven't try this solution! > Yes, gcc-4.4.7 would also not support C++11, gcc-4.8 is the first one > supporting enough of it to compile VOTCA. > > > > The second method of using another boost version with the same gcc > compiler > > as votca: I actually using the default gcc to compile both Boost and > Votca > > (which gcc --> /usr/local/bin/gcc gcc --version --> gcc (GCC) 6.1.0). > So > > I think the gcc used to compile both BOOST and votca is the same. Using > the > > default gcc, I now installed the BOOST 1.62.0 version. However, the > > "undefined reference" error still appears. For gcc 6.1, I checked it > support > > the c++11 standard. > Something seems broken here, if you are lucky > $ strings -a /path/to/libboost_program_options.so | grep GCC > will reveal to you, which gcc was used to compile boost. > > But I would try to recompile boost in another directory using gcc-6.1 > > I recently added votca to spack, so you might have a chance to install > it that way: > <https://github.com/votca/csg/wiki/Installing#spack> > > Christoph > > > > For the third one: my system is Centos, it seems there is not votca > install. > > > > Best Regards, > > Shiyun > > > > > > 在 2017年5月27日星期六 UTC+8上午12:22:32,Christoph Junghans写道: > >> > >> 2017-05-26 4:23 GMT-06:00 Shiyun Xiong <[email protected]>: > >> > Dear Christoph, > >> > > >> > I have install the latest BOOST version 1.64.0. However, I have > >> > encountered > >> > other errors: 'Make_array' is not a member of 'boost::serialization'. > >> Yup, boost 1.64.0 has a bug (see here: > >> <https://svn.boost.org/trac/boost/ticket/12516>), which has nothing to > >> do with VOTCA. 1.64 is very new release and hence not very well > >> tested. > >> > >> > In fact, I have used this version of BOOST at the beginning and this > >> > error > >> > occured. Denis suggested me to downgrade my boost version and I found > >> > from > >> > the votca website that 1.53 is a recommanded version. That's why I > used > >> > 1.53 > >> Ok, let me try to clarify. VOTCA works pretty much works with any gcc > >> and boost version (except may the above mentioned boost-1.64.0). > >> > >> However, VOTCA (from version 1.4on ) uses C++-11 features and hence > >> depends on C++-11 ABI. Unfortunately, <=gcc-4.9, gcc-5* and >=gcc-6 > >> have 3 different C++-11 ABIs and hence you will get the "undefined > >> reference" error from above when trying to link VOTCA against a boost, > >> which was built with a different C++-11 ABI. > >> > >> There are multiple solutions to that issue: > >> 1.) Use the system (NOT /usr/local) gcc and boost - usually the Linux > >> distributions get their thing together nicely. > >> 2.) Use a (non-buggy) boost version, which is compiled with SAME > >> compiler as you are compiling VOTCA with. > >> 3.) If you don't need the development version of VOTCA, just use the > >> package, which comes with your linux distributions - OpenSuse, Fedora, > >> Debian, Ubuntu have VOTCA packages. See > >> <https://github.com/votca/csg/wiki/Installing> > >> > >> Christoph > >> > >> > > >> > Attached are the on screen information and cmake error information. > >> > Please > >> > check it. Thank you so much! > >> > > >> > Best regards, > >> > Shiyun > >> > > >> > > >> > 在 2017年5月24日星期三 UTC+8下午9:53:25,Christoph Junghans写道: > >> >> > >> >> 2017-05-24 2:00 GMT-06:00 Bensen-zjg Zhang <[email protected]>: > >> >> > Dear VOTCA developers and users, > >> >> > > >> >> > > >> >> > I am trying to install the VOTCA software with build.sh on Centos > >> >> > system > >> >> > but > >> >> > encountered some errors. Before install votca, I have installed > all > >> >> > the > >> >> > dependencies: Boost, Git, GSL, FFTW3, EXPAT, PkgConfig, SQLITE3, > >> >> > Doxygen, > >> >> > Gromacs. The gcc version is 6.1.0 and the current boost version is > >> >> > 1.53.0. > >> >> > The installation command I used is: > >> >> > > >> >> > ./build.sh --prefix /usr/local/votca/ > >> >> > -DFFTW3_INCLUDE_DIR=/usr/local/fftw_shared/include/ > >> >> > -DFFTW3_LIBRARY=/usr/local/fftw_shared/lib/libfftw3.so --dev tools > >> >> > csg > >> >> > kmc > >> >> > moo ctp ctp-tutorials ctp-manual > >> >> > > >> >> > With this building command, I got the following error information: > >> >> > /usr/local/lib/libboost_program_options.so: undefined reference to > >> >> > `std::__cxx11::basic_string<char, std::char_traits<char>, > >> >> > std::allocator<char> >::~basic_string()@GLIBCXX_3.4.21' > >> >> Errors like these usually mean your boost has been compiled with an > >> >> older (ABI-incompatible) version of gcc. > >> >> (I am guessing so, as you are using gcc-6.1 which relatively recent, > >> >> while boost-1.53 is actually more than 4 years old.) > >> >> > >> >> See the troubleshooting block of > >> >> > >> >> > >> >> > https://gcc.gnu.org/onlinedocs/gcc-5.2.0/libstdc++/manual/manual/using_dual_abi.html > > >> >> for details. > >> >> > >> >> Just install a newer version of boost using your gcc-6.1 and have > >> >> VOTCA compile against that one. > >> >> > >> >> Christoph > >> >> > >> >> > >> >> > >> >> > /usr/local/lib/libboost_program_options.so: undefined reference to > >> >> > `std::logic_error::logic_error(std::__cxx11::basic_string<char, > >> >> > std::char_traits<char>, std::allocator<char> > > >> >> > const&)@GLIBCXX_3.4.21' > >> >> > /usr/local/lib/libboost_program_options.so: undefined reference to > >> >> > `std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, > >> >> > std::allocator<wchar_t> >::~basic_string()@GLIBCXX_3.4.21' > >> >> > /usr/local/lib/libboost_program_options.so: undefined reference to > >> >> > `operator > >> >> > delete(void*, unsigned long)@CXXABI_1.3.9' > >> >> > /usr/local/lib/libboost_program_options.so: undefined reference to > >> >> > `std::__cxx11::basic_string<char, std::char_traits<char>, > >> >> > std::allocator<char> >::_M_replace(unsigned long, unsigned long, > char > >> >> > const*, unsigned long)@GLIBCXX_3.4.21' > >> >> > /usr/local/lib/libboost_program_options.so: undefined reference to > >> >> > `std::__cxx11::basic_string<char, std::char_traits<char>, > >> >> > std::allocator<char> >::find(char const*, unsigned long, unsigned > >> >> > long) > >> >> > const@GLIBCXX_3.4.21' > >> >> > /usr/local/lib/libboost_filesystem.so: undefined reference to > >> >> > `std::__cxx11::basic_string<char, std::char_traits<char>, > >> >> > std::allocator<char> >::rfind(char, unsigned long) > >> >> > const@GLIBCXX_3.4.21' > >> >> > collect2: ld returned 1 exit status > >> >> > make[2]: *** [src/tools/votca_property] Error 1 > >> >> > make[1]: *** [src/tools/CMakeFiles/votca_property.dir/all] Error 2 > >> >> > make: *** [all] Error 2 > >> >> > > >> >> > When searching from the previous discussions, I found that I may > need > >> >> > to > >> >> > specify the Boost path. As a result, I tried: > >> >> > > >> >> > ./build.sh --prefix /usr/local/votca/ > >> >> > -DFFTW3_INCLUDE_DIR=/usr/local/fftw_shared/include/ > >> >> > -DFFTW3_LIBRARY=/usr/local/fftw_shared/lib/libfftw3.so > >> >> > -DBoost_INCLUDE_DIR=/usr/local/include/boost/ > >> >> > > >> >> > > >> >> > > -DBoost_PROGRAM_OPTIONS_LIBRARY=/usr/local/lib/libboost_program_options.so > >> >> > -DBoost_FILESYSTEM_LIBRARY=/usr/local/lib/libboost_filesystem.so > >> >> > --dev > >> >> > tools > >> >> > csg kmc moo ctp ctp-tutorials ctp-manual > >> >> > > >> >> > > >> >> > This time, votca can not find the boost package? I have no idea > why > >> >> > it > >> >> > can > >> >> > not find boost since I have specified the path to it! > >> >> > For more information, I have attached the entire on screen printed > >> >> > information and the cmake error file. The file names with > >> >> > "_noBoostPath" > >> >> > correspond to the first building command (no boost path is > specified) > >> >> > while > >> >> > the file names with "_withBoostPath" correspond to the second > >> >> > building > >> >> > command. > >> >> > > >> >> > By the way, when using the second building command, votca find > both > >> >> > GSL > >> >> > and > >> >> > MKL libraries, so I have also tried to disable the mkl library > with > >> >> > -DCMAKE_DISABLE_FIND_PACKAGE_MKL=ON, but not change happens. > >> >> > > >> >> > Thank you very much for your kind help! > >> >> > With best regards, > >> >> > Shiyun > >> >> > > >> >> > -- > >> >> > You received this message because you are subscribed to the Google > >> >> > Groups > >> >> > "votca" group. > >> >> > To unsubscribe from this group and stop receiving emails from it, > >> >> > send > >> >> > an > >> >> > email to [email protected]. > >> >> > To post to this group, send email to [email protected]. > >> >> > Visit this group at https://groups.google.com/group/votca. > >> >> > For more options, visit https://groups.google.com/d/optout. > >> >> > >> >> > >> >> > >> >> -- > >> >> Christoph Junghans > >> >> Web: http://www.compphys.de > >> > > >> > -- > >> > You received this message because you are subscribed to the Google > >> > Groups > >> > "votca" group. > >> > To unsubscribe from this group and stop receiving emails from it, > send > >> > an > >> > email to [email protected]. > >> > To post to this group, send email to [email protected]. > >> > Visit this group at https://groups.google.com/group/votca. > >> > For more options, visit https://groups.google.com/d/optout. > >> > >> > >> > >> -- > >> Christoph Junghans > >> Web: http://www.compphys.de > > > > -- > > You received this message because you are subscribed to the Google > Groups > > "votca" group. > > To unsubscribe from this group and stop receiving emails from it, send > an > > email to [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at https://groups.google.com/group/votca. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > Christoph Junghans > Web: http://www.compphys.de > -- You received this message because you are subscribed to the Google Groups "votca" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/votca. For more options, visit https://groups.google.com/d/optout.
==> Ran patch() for votca-tools
==> Building votca-tools [CMakePackage]
==> Executing phase : 'cmake'
==> Executing phase : 'build'
==> Error: ProcessError: Command exited with status 2:
'make' '-j28'
/home/xiong/votca_spack/spack/lib/spack/spack/build_systems/cmake.py:154, in
build:
151 def build(self, spec, prefix):
152 """Make the build targets"""
153 with working_dir(self.build_directory):
>> 154 inspect.getmodule(self).make(*self.build_targets)
See build log for details:
/tmp/xiong/spack-stage/spack-stage-b635PZ/votca-tools-f507f69/spack-build.out
spack-build.out
Description: Binary data
