Hi,
I tried to install imp 2.2.0 on a mac and on a linux machine. It failed on both machines.
First I run: > cmake ../imp -DCMAKE_BUILD_TYPE=Release -DIMP_MAX_CHECKS=NONE -DIMP_MAX_LOG=SILENT -DCMAKE_CXX_FLAGS="-fopenmp"
and then:
> $ cat CMakeError.log > Performing C++ SOURCE FILE Test IMP_COMPILER_HAS_AUTO failed with the following output: > Change Dir: /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp > > Run Build Command:/usr/bin/make "cmTryCompileExec1534889314/fast" > /usr/bin/make -f CMakeFiles/cmTryCompileExec1534889314.dir/build.make CMakeFiles/cmTryCompileExec1534889314.dir/build > make[1]: Entering directory `/usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp' > /usr/bin/cmake -E cmake_progress_report /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp/CMakeFiles 1 > Building CXX object CMakeFiles/cmTryCompileExec1534889314.dir/src.cxx.o > /usr/bin/c++ -fopenmp -DIMP_COMPILER_HAS_AUTO -o CMakeFiles/cmTryCompileExec1534889314.dir/src.cxx.o -c /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp/src.cxx > /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp/src.cxx: In function ‘int main()’: > /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp/src.cxx:10:8: error: ‘a’ does not name a type > make[1]: *** [CMakeFiles/cmTryCompileExec1534889314.dir/src.cxx.o] Error 1 > make[1]: Leaving directory `/usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp' > make: *** [cmTryCompileExec1534889314/fast] Error 2 > > Source file was: > /** > * ile nothing.cpp > * rief nothing > * > * Copyright 2007-2014 IMP Inventors. All rights reserved. > * > */ > > int main() { > auto a = 6; > return 0; > }
Is there any known issue about this IMP version?
Thanks, Davide
On 7/18/14, 11:33 AM, Davide Baù wrote: > First I run: >> cmake ../imp -DCMAKE_BUILD_TYPE=Release -DIMP_MAX_CHECKS=NONE -DIMP_MAX_LOG=SILENT -DCMAKE_CXX_FLAGS="-fopenmp"
Looks fine. You don't say what the failure is here.
>> $ cat CMakeError.log >> Performing C++ SOURCE FILE Test IMP_COMPILER_HAS_AUTO failed with the following output: ... >> /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp/src.cxx:10:8: error: ‘a’ does not name a type ... >> auto a = 6;
Right, so your compiler is old and doesn't support the 'auto' keyword. That's fine - we won't use it in this case.
So... what's the error?
Ben
Hi,
I forgot to mention that the cmake step ended (apparently) with no errors.
The error I get at the end is the following:
n file included from /usr/src/imp/imp/modules/kinematics/src/ProteinKinematics.cpp:10:0, from /usr/src/imp/imp-r2.2.0/src/kinematics_all.cpp:8: /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h: In member function ‘IMP::kinematics::DihedralAngleRevoluteJoints IMP::kinematics::ProteinKinematics::get_ordered_joints()’: /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:25: error: expected primary-expression before ‘*’ token /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:26: error: ‘j’ was not declared in this scope /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:55: error: ‘BOOST_FOREACH’ was not declared in this scope /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:55: note: suggested alternative: In file included from /usr/include/boost/multi_index/hashed_index.hpp:22:0, from /usr/include/boost/graph/named_graph.hpp:17, from /usr/include/boost/graph/adjacency_list.hpp:45, from /usr/src/imp/imp-r2.2.0/include/IMP/base/hash.h:29, from /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/kinematics_config.h:142, from /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/KinematicForest.h:15, from /usr/src/imp/imp/modules/kinematics/src/CompositeJoint.cpp:10, from /usr/src/imp/imp-r2.2.0/src/kinematics_all.cpp:1: /usr/include/boost/foreach_fwd.hpp:56:1: note: ‘boost::BOOST_FOREACH’ In file included from /usr/src/imp/imp/modules/kinematics/src/ProteinKinematics.cpp:10:0, from /usr/src/imp/imp-r2.2.0/src/kinematics_all.cpp:8: /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:56: error: expected ‘;’ before ‘{’ token make[2]: *** [modules/kinematics/src/CMakeFiles/IMP.kinematics-lib.dir/__/__/__/src/kinematics_all.cpp.o] Error 1 make[1]: *** [modules/kinematics/src/CMakeFiles/IMP.kinematics-lib.dir/all] Error 2 make: *** [all] Error 2
Davide
On Jul 18, 2014, at 8:57 PM, Ben Webb wrote:
> On 7/18/14, 11:33 AM, Davide Baù wrote: >> First I run: >>> cmake ../imp -DCMAKE_BUILD_TYPE=Release -DIMP_MAX_CHECKS=NONE -DIMP_MAX_LOG=SILENT -DCMAKE_CXX_FLAGS="-fopenmp" > > Looks fine. You don't say what the failure is here. > >>> $ cat CMakeError.log >>> Performing C++ SOURCE FILE Test IMP_COMPILER_HAS_AUTO failed with the following output: > ... >>> /usr/src/imp/imp-r2.2.0/CMakeFiles/CMakeTmp/src.cxx:10:8: error: ‘a’ does not name a type > ... >>> auto a = 6; > > Right, so your compiler is old and doesn't support the 'auto' keyword. That's fine - we won't use it in this case. > > So... what's the error? > > Ben > -- > ben@salilab.org http://salilab.org/~ben/ > "It is a capital mistake to theorize before one has data." > - Sir Arthur Conan Doyle > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev
On 7/21/14, 2:11 AM, Davide Baù wrote: > /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:55: > error: ‘BOOST_FOREACH’ was not declared in this scope
What happens if you replace BOOST_FOREACH in that header with IMP_FOREACH?
Ben
It seems to work on linux. No yet on mac; I'm updating my mac before trying again.
Davide
On Jul 21, 2014, at 7:04 PM, Ben Webb wrote:
> On 7/21/14, 2:11 AM, Davide Baù wrote: >> /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:55: >> error: ‘BOOST_FOREACH’ was not declared in this scope > > What happens if you replace BOOST_FOREACH in that header with IMP_FOREACH? > > Ben > -- > ben@salilab.org http://salilab.org/~ben/ > "It is a capital mistake to theorize before one has data." > - Sir Arthur Conan Doyle > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev
It compiles on a Mac. If I start the python console with "./setup_environment.sh python", I can import IMP, but when leaving the console I have the following error message about (a memory error, apparently):
/usr/src/imp/imp-r2.2.0$ ./setup_environment.sh python Python 2.7.1 (r271:86832, Jul 31 2011, 19:30:53) [GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import IMP >>> python(7291) malloc: *** error for object 0x7fff7152f860: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug Abort trap: 6
Davide
On Jul 23, 2014, at 12:01 PM, Davide Baù wrote:
> It seems to work on linux. > No yet on mac; I'm updating my mac before trying again. > > Davide > > > On Jul 21, 2014, at 7:04 PM, Ben Webb wrote: > >> On 7/21/14, 2:11 AM, Davide Baù wrote: >>> /usr/src/imp/imp-r2.2.0/include/IMP/kinematics/ProteinKinematics.h:76:55: >>> error: ‘BOOST_FOREACH’ was not declared in this scope >> >> What happens if you replace BOOST_FOREACH in that header with IMP_FOREACH? >> >> Ben >> -- >> ben@salilab.org http://salilab.org/~ben/ >> "It is a capital mistake to theorize before one has data." >> - Sir Arthur Conan Doyle >> _______________________________________________ >> IMP-dev mailing list >> IMP-dev@salilab.org >> https://salilab.org/mailman/listinfo/imp-dev >
On 7/23/14, 12:05 PM, Davide Baù wrote: > It compiles on a Mac. > If I start the python console with "./setup_environment.sh python", I > can import IMP, but when leaving the console I have the following error > message about (a memory error, apparently):
Unfortunately this looks like an older Mac. We don't see the problem here on our newer Macs, so it would be hard to fix. You could certainly attach gdb as it suggests and poke at it to see what's up.
Ben
participants (2)
-
Ben Webb
-
Davide Baù