OpenBabel Issues

Hey Everyone,

Trying to setup Avo on my home box but i’ve been having problems compiling
the latest source version of OpenBabel. Below is a loooong print out of the
error if thats of any help to anyone?

./…/include/openbabel/forcefield.h:63: error: invalid function declaration
…/…/include/openbabel/forcefield.h:125: error: invalid function
declaration
…/…/include/openbabel/forcefield.h:183: error: invalid function
declaration
forcefieldmm2.h:32: error: expected class-name before ‘{’ token
forcefieldmm2.h:46: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:46: error: template argument 1 is invalid
forcefieldmm2.h:46: error: template argument 2 is invalid
forcefieldmm2.h:50: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:50: error: template argument 1 is invalid
forcefieldmm2.h:50: error: template argument 2 is invalid
forcefieldmm2.h:55: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:55: error: template argument 1 is invalid
forcefieldmm2.h:55: error: template argument 2 is invalid
forcefieldmm2.h:57: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:57: error: template argument 1 is invalid
forcefieldmm2.h:57: error: template argument 2 is invalid
forcefieldmm2.h:64: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:64: error: template argument 1 is invalid
forcefieldmm2.h:64: error: template argument 2 is invalid
forcefieldmm2.h:69: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:69: error: template argument 1 is invalid
forcefieldmm2.h:69: error: template argument 2 is invalid
forcefieldmm2.h:73: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:73: error: template argument 1 is invalid
forcefieldmm2.h:73: error: template argument 2 is invalid
forcefieldmm2.h:77: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.h:77: error: template argument 1 is invalid
forcefieldmm2.h:77: error: template argument 2 is invalid
forcefieldmm2.h: In constructor
’OpenBabel::OBForceFieldMM2::OBForceFieldMM2(const char*, bool)’:
forcefieldmm2.h:90: error: class ‘OpenBabel::OBForceFieldMM2’ does not have
any field named ‘OBForceField’
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_Bond()’:
forcefieldmm2.cpp:28: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.cpp:28: error: ‘parameter’ was not declared in this scope
forcefieldmm2.cpp:36: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:39: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:48: error: ‘GetParameter’ was not declared in this scope
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_Angle()’:
forcefieldmm2.cpp:77: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.cpp:77: error: ‘parameter’ was not declared in this scope
forcefieldmm2.cpp:85: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:88: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:100: error: ‘GetParameter’ was not declared in this scope
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_StrBnd()’:
forcefieldmm2.cpp:144: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.cpp:144: error: ‘parameter’ was not declared in this scope
forcefieldmm2.cpp:153: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:163: error: ‘GetParameter’ was not declared in this scope
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_Torsion()’:
forcefieldmm2.cpp:194: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.cpp:194: error: ‘parameter’ was not declared in this scope
forcefieldmm2.cpp:203: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:218: error: ‘GetParameter’ was not declared in this scope
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_OOP()’:
forcefieldmm2.cpp:288: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:291: error: request for member ‘size’ in
’((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffoutplanebendparams’,
which is of non-class type 'int’
forcefieldmm2.cpp:292: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:306: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:307: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:316: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:318: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:327: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:329: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_VDW()’:
forcefieldmm2.cpp:349: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.cpp:349: error: ‘parameter’ was not declared in this scope
forcefieldmm2.cpp:359: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:368: error: ‘GetParameter’ was not declared in this scope
forcefieldmm2.cpp: In member function ‘double
OpenBabel::OBForceFieldMM2::E_Electrostatic()’:
forcefieldmm2.cpp:421: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:425: error: ‘GetParameterIdx’ was not declared in this
scope
forcefieldmm2.cpp:427: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp:440: error: invalid types ‘int[int]’ for array subscript
forcefieldmm2.cpp: In member function ‘OpenBabel::OBForceFieldMM2&
OpenBabel::OBForceFieldMM2::operator=(OpenBabel::OBForceFieldMM2&)’:
forcefieldmm2.cpp:497: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp:497: error: ‘class OpenBabel::OBForceFieldMM2’ has no
member named '_mol’
forcefieldmm2.cpp: In member function ‘bool
OpenBabel::OBForceFieldMM2::Setup(OpenBabel::OBMol&)’:
forcefieldmm2.cpp:503: error: ‘_mol’ was not declared in this scope
forcefieldmm2.cpp: In member function ‘bool
OpenBabel::OBForceFieldMM2::ParseParamFile()’:
forcefieldmm2.cpp:515: error: ‘OBFFParameter’ was not declared in this scope
forcefieldmm2.cpp:515: error: expected ;' before 'parameter' forcefieldmm2.cpp:581: error: 'parameter' was not declared in this scope forcefieldmm2.cpp:592: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffbondparams', which is of non-class type 'int' forcefieldmm2.cpp:605: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffangleparams', which is of non-class type 'int' forcefieldmm2.cpp:611: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffstretchbendparams', which is of non-class type 'int' forcefieldmm2.cpp:624: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_fftorsionparams', which is of non-class type 'int' forcefieldmm2.cpp:631: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffoutplanebendparams', which is of non-class type 'int' forcefieldmm2.cpp:639: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffvdwprparams', which is of non-class type 'int' forcefieldmm2.cpp:646: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffvdwparams', which is of non-class type 'int' forcefieldmm2.cpp:654: error: request for member 'push_back' in '((OpenBabel::OBForceFieldMM2*)this)->OpenBabel::OBForceFieldMM2::_ffdipoleparams', which is of non-class type 'int' forcefieldmm2.cpp: In member function 'bool OpenBabel::OBForceFieldMM2::SetMM2Types()': forcefieldmm2.cpp:672: error: '_mol' was not declared in this scope make[3]: *** [forcefieldmm2.lo] Error 1 make[3]: Leaving directory/home/james/university/4th_year/engg492/code/openbabel/src/forcefields’
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
/home/james/university/4th_year/engg492/code/openbabel/src' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/james/university/4th_year/engg492/code/openbabel/src’
make: *** [all-recursive] Error 1

Am i missing something? I did configure beforehand. I’m following the
instructions here: http://avogadro.sourceforge.net/wiki/Compiling

Hope someone can help!
Thanks,
James

On Oct 3, 2007, at 4:40 AM, James Bunt wrote:

Trying to setup Avo on my home box but i’ve been having problems
compiling the latest source version of OpenBabel. Below is a
loooong print out of the error if thats of any help to anyone?

That’s a little strange. Which version of Open Babel are you
compiling? Are you going from the SVN trunk or the 2.1 branch or some
other version?

Cheers,
-Geoff

SVN trunk, exactly as per the tutorial on the Avogadro wiki. (Is that
tutorial still up to date?)

Cheers,
James

On 10/4/07, Geoffrey Hutchison geoff.hutchison@gmail.com wrote:

On Oct 3, 2007, at 4:40 AM, James Bunt wrote:

Trying to setup Avo on my home box but i’ve been having problems
compiling the latest source version of OpenBabel. Below is a
loooong print out of the error if thats of any help to anyone?

That’s a little strange. Which version of Open Babel are you
compiling? Are you going from the SVN trunk or the 2.1 branch or some
other version?

Cheers,
-Geoff

On Oct 3, 2007, at 4:40 PM, James Bunt wrote:

SVN trunk, exactly as per the tutorial on the Avogadro wiki. (Is
that tutorial still up to date?

No, it’s not up to date. The SVN trunk was needed before Open Babel
2.1 was released. If you have OB-2.1.x installed, you should be good.
Otherwise, track:

https://openbabel.svn.sourceforge.net/svnroot/openbabel/openbabel/
branches/openbabel-2-1-x

Alright i’ll give that a try. I think i did have OB2.1.1 installed but for
some reason couldn’t open any of the blueobelisk cml files. I assumed this
to be an OB problem but maybe i assumed wrong? I can open the exact same
files on my box at uni (i scp’d them from uni to home) so i don’t think its
a problem with the cml files.

I’ll install OB 2.1 again and see how things go.

Thanks for the help,
James

On 10/4/07, Geoffrey Hutchison geoff.hutchison@gmail.com wrote:

On Oct 3, 2007, at 4:40 PM, James Bunt wrote:

SVN trunk, exactly as per the tutorial on the Avogadro wiki. (Is that
tutorial still up to date?

No, it’s not up to date. The SVN trunk was needed before Open Babel 2.1was released. If you have
OB-2.1.x installed, you should be good. Otherwise, track:

https://openbabel.svn.sourceforge.net/svnroot/openbabel/openbabel/branches/openbabel-2-1-x