When compiling the sources in oxDNA_2.2_RAPRIL2015.tgz as posted on 2015-04-10, gcc 4.8.1 fails to compile DNA2Interaction.cpp (multiple similar errors omitted):
oxDNA-2.2/src/Interactions/DNA2Interaction.cpp: In instantiation of ‘number DNA2Interaction<number>::pair_interaction_bonded(BaseParticle<number>*, BaseParticle<number>*, LR_vector<number>*, bool) [with number = float]’:
oxDNA-2.2/src/Interactions/DNA2Interaction.cpp:423:16: required from here
oxDNA-2.2/src/Interactions/DNA2Interaction.cpp:33:40: error: ‘_check_bonded_neighbour’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
if(!_check_bonded_neighbour(&p, &q, r)) return (number) 0;
^
oxDNA-2.2/src/Interactions/DNA2Interaction.cpp:33:40: note: declarations in dependent base ‘DNAInteraction<float>’ are not found by unqualified lookup
oxDNA-2.2/src/Interactions/DNA2Interaction.cpp:33:40: note: use ‘this->_check_bonded_neighbour’ instead
Workaround: since [r6468] fixes this, and the tarball sources are mostly similar to [r6464], I made a patch (attached) in a SVN working directory,
oxDNA-svn> svn diff -c6468 > ../r6468.diff
applied it to the tarball sources,
oxDNA-2.2> patch -p0 < ../r6468.diff
and recompiled without fatal errors.
Dear Mike,
thank you very much for noticing and warning us. It looks like we forgot to test the latest release on newer compilers. I have released a new tarball with the patched sources. We appreciate your help :-)
best,
Lorenzo
Thanks for the quick remedy. This tarball is not compressed as its filename would suggest, but its contents compile OK with gcc 4.8.