You are here

Rosetta 3.2

15 posts / 0 new
Last post
Rosetta 3.2
#1

I used pc with Fedora 14. I used gcc 4.5 and mpich2 to compile Rosetta 3.2. However I encounter this erros when I try to compile Rosetta 3,2 with scons.

src/core/conformation/symmetry/util.cc: In function 'void core::conformation::symmetry::make_symmetric_pose(core::pose::Pose&, core::conformation::symmetry::SymmetryInfo)':
src/core/conformation/symmetry/util.cc:360:37: error: expected type-specifier
src/core/conformation/symmetry/util.cc:360:37: error: conversion from 'int*' to non-scalar type 'core::pose::PDBInfoOP' requested
src/core/conformation/symmetry/util.cc:360:37: error: expected ',' or ';'
scons: *** [build/src/release/linux/2.6/64/x86/gcc/mpi/core/conformation/symmetry/util.os] Error 1
scons: building terminated because of errors.

Post Situation: 
Thu, 2011-01-27 08:18
knutjbj

I guess we haven't tested it on 4.5. I can't duplicate this at the moment, but it looks like a cranky missing headers issue. In the meantime, try adding src/core/pose/PDBInfo.hh to the headers list for src/core/conformation/symmetry/util.cc and, if necessary, util.hh.

Thu, 2011-01-27 08:31
smlewis

Delete please see below

Thu, 2011-01-27 23:24
knutjbj

Hi

It appear that util.cc did in fact include #include even before I add this comment. It also did include #include . I do not know C++ but I do know Java. AS far I am concent it appear that util.cc does not include the header of type or something else. You wrote that I could add util.hh is there another util.hh i should add than one in the same dir as util.cc. As I am using gcc 4.5.1 there might be a new feature or bug in this compiler that cause this error. Should I report it to Fedora?

src/core/conformation/symmetry/util.cc: In function 'void core::conformation::symmetry::make_symmetric_pose(core::pose::Pose&, core::conformation::symmetry::SymmetryInfo)':
src/core/conformation/symmetry/util.cc:362:37: error: expected type-specifier
src/core/conformation/symmetry/util.cc:362:37: error: conversion from 'int*' to non-scalar type 'core::pose::PDBInfoOP' requested
src/core/conformation/symmetry/util.cc:362:37: error: expected ',' or ';'

Thu, 2011-01-27 23:23
knutjbj

Hi all,

If you make the following change to src/core/conformation/symmetry/util.cc, at around line 360, this and everything else will compile with gcc 4.5.

It seems simply that there is an extra "PDBInfo." But I don't really know if this change will mess things up or not. Confirmation from the author would be appreciated.

#ifdef WIN32
pose::PDBInfoOP pdb_info_src (new pose::PDBInfo( pose.pdb_info() ));
#else
/// pose::PDBInfoOP pdb_info_src = new pose::PDBInfo::PDBInfo( pose.pdb_info() );
pose::PDBInfoOP pdb_info_src = new pose::PDBInfo( pose.pdb_info() );
#endif

Sat, 2011-01-29 06:02
sdurell

I was having the same problem in this thread using gcc 4.5, but under Ubuntu 11.4.

I can confirm that this solution worked for me. Thanks awfully.

Wed, 2011-05-11 02:21
PrinceXV

The headers were in the package I downloaded but I still had the same error. This was like this:

#ifdef WIN32
pose::PDBInfoOP pdb_info_src (new pose::PDBInfo( pose.pdb_info() ));
#else
pose::PDBInfoOP pdb_info_src = new pose::PDBInfo::PDBInfo( pose.pdb_info() );
#endif

and I changed it to:

#ifdef WIN32
pose::PDBInfoOP pdb_info_src (new pose::PDBInfo( pose.pdb_info() ));
#else
pose::PDBInfoOP pdb_info_src = new pose::PDBInfo( pose.pdb_info() );
#endif

to get it to compile. I didn't look through to find a nested namespace.

Sun, 2011-01-30 21:48
Xittenn

Thanks

I am now able to compile with gcc 4.5. It might appear that gcc is more fussy about namespace than earlier gcc.

Knut J

Thu, 2011-02-03 03:26
knutjbj

Hi,

I am trying to install rosetta 3.2.1 on fedora core 14 but I am getting the following error after executing the scons command :-
cons: Reading SConscript files ...
Traceback (most recent call last):
File "/usr/local/rosetta_source/SConstruct", line 139, in main
build = SConscript("tools/build/setup.py")
File "/usr/lib/scons/SCons/Script/SConscript.py", line 614, in __call__
return method(*args, **kw)
File "/usr/lib/scons/SCons/Script/SConscript.py", line 551, in SConscript
return _SConscript(self.fs, *files, **subst_kw)
File "/usr/lib/scons/SCons/Script/SConscript.py", line 260, in _SConscript
exec _file_ in call_stack[-1].globals
File "/usr/local/rosetta_source/tools/build/setup.py", line 411, in
build = setup()
File "/usr/local/rosetta_source/tools/build/setup.py", line 402, in setup
build.options_requested, build.options = setup_build_options()
File "/usr/local/rosetta_source/tools/build/setup.py", line 108, in setup_build_options
supported, actual.cxx, requested.cxx_ver
File "/usr/local/rosetta_source/tools/build/setup_platforms.py", line 83, in select_compiler_version
(actual, compiler)
KeyError: "Unknown version number 4.5 for compiler 'gcc'"
scons: done reading SConscript files.
scons: Building targets ...
scons: `bin' is up to date.
scons: done building targets.

Tue, 2011-05-24 19:17
bharat_46010

Open tools/build/basic.settings. Find the entries for gcc. Add an entry for gcc 4.5 (the last one that's there is 4.1, just copy/paste it and increment it to 4.5). That ought to work.

Wed, 2011-05-25 13:45
smlewis

Hi,

After doing that also I am getting the following errors:-
scons: Reading SConscript files ...
sh: svnversion: command not found
sh: svn: command not found

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in

scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "/usr/local/rosetta_source/SConscript", line 40, in
scons: done reading SConscript files.
scons: Building targets ...
g++-4.1 -o build/src/release/linux/2.6/32/x86/gcc/apps/public/AbinitioRelax.o -c -std=c++98 -pipe -ffor-scope -W -Wall -pedantic -Wno-long-long -malign-double -march=pentium4 -O3 -ffast-math -funroll-loops -finline-functions -finline-limit=20000 -s -Wno-unused-variable -DNDEBUG -Isrc -Iexternal/include -Isrc/platform/linux/32/gcc -Isrc/platform/linux/32 -Isrc/platform/linux -Iexternal/boost_1_38_0 -I/usr/local/include -I/usr/include src/apps/public/AbinitioRelax.cc
sh: g++-4.1: command not found
scons: *** [build/src/release/linux/2.6/32/x86/gcc/apps/public/AbinitioRelax.o] Error 127
scons: building terminated because of errors.

Wed, 2011-05-25 17:59
bharat_46010

Try editing the path to be g++4.1 or similar; it's probably a single character difference somewhere. "which g++" will let you know where to look for what g++ versions are available, then you can get the right one.

You can also try overwriting tools/build/site.settings with tools/build/site.settings.topsail, which sometimes improves SCons's ability to find the right path to things.

Fri, 2011-05-27 08:24
smlewis

after making changes in the above mentioned files, I am getting the following error :-

sh: o: command not found
gcc -o build/src/release/linux/2.6/32/x86/gcc/libdevel.so -shared -Llib -Lexternal/lib -Lbuild/src/release/linux/2.6/32/x86/gcc -Lsrc -L/usr/local/lib -L/usr/lib -lprotocols -lcore -lnumeric -lutility -lObjexxFCL -lz
/usr/bin/ld: cannot find -lprotocols
/usr/bin/ld: cannot find -lcore
/usr/bin/ld: cannot find -lnumeric
/usr/bin/ld: cannot find -lutility
/usr/bin/ld: cannot find -lObjexxFCL
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
scons: *** [build/src/release/linux/2.6/32/x86/gcc/libdevel.so] Error 1
scons: building terminated because of errors.

Fri, 2011-05-27 18:02
bharat_46010

I was also getting:
sh: svnversion: command not found
sh: svn: command not found
and it turned out my system did not have the piece of software called "subversion" installed

After installing subversion (on my Linux Ubuntu box it ws just a matter of saying "sudo apt-get install subversion")
and cleaning everything with:
scons -c bin mode=release

all was fine

Hope this helps

Pietro

Fri, 2011-06-03 02:56
pietro1968

You are correct that that's how to fix it those warnings.

The subversion errors are irrelevant to successfully building Rosetta. The developer's version has a subsystem which stamps the compiled executeables with the subversion (SVN) revision number, which is useful for debugging and ensuring reproducibility. We never can remember to take that subsystem OUT for the public release (which has its SVN info stripped), so the computer complains about it, without actually negatively affecting compilation.

Wed, 2011-06-08 07:42
smlewis