cryos/avogadro

Compiling Error on a Manjaro-Machine

Opened this issue · 1 comments

I encounter the following issue when trying to compile the cloned repository. Since I am not that experienced with this stuff, I hope to get some help here. Thanks in advance!

[ 28%] Linking CXX shared library ../../lib/libavogadro.so /usr/bin/ld: CMakeFiles/avogadro.dir/elementdetail_p.cpp.o: in functionAvogadro::ElementDetail::paint(QPainter*, QStyleOptionGraphicsItem const*, QWidget*)':
/home/florians/Downloads/avogadro-git/libavogadro/src/elementdetail_p.cpp:68: undefined reference to OpenBabel::etab' /usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/elementdetail_p.cpp:68: undefined reference to OpenBabel::OBElementTable::GetSymbol(int)'
/usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/elementdetail_p.cpp:70: undefined reference to OpenBabel::OBElementTable::GetMass(int)' /usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/elementdetail_p.cpp:72: undefined reference to OpenBabel::OBElementTable::GetRGB(int)'
/usr/bin/ld: CMakeFiles/avogadro.dir/elementitem_p.cpp.o: in function Avogadro::ElementItem::ElementItem(int)': /home/florians/Downloads/avogadro-git/libavogadro/src/elementitem_p.cpp:48: undefined reference to OpenBabel::etab'
/usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/elementitem_p.cpp:48: undefined reference to OpenBabel::OBElementTable::GetSymbol(int)' /usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/elementitem_p.cpp:51: undefined reference to OpenBabel::OBElementTable::GetRGB(int)'
/usr/bin/ld: CMakeFiles/avogadro.dir/molecule.cpp.o: in function Avogadro::Molecule::setOBMol(OpenBabel::OBMol*)': /home/florians/Downloads/avogadro-git/libavogadro/src/molecule.cpp:1405: undefined reference to OpenBabel::OBMol::SetConformer(int)'
/usr/bin/ld: CMakeFiles/avogadro.dir/molecule.cpp.o: in function Avogadro::Molecule::OBMol() const': /home/florians/Downloads/avogadro-git/libavogadro/src/molecule.cpp:1234: undefined reference to OpenBabel::etab'
/usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/molecule.cpp:1234: undefined reference to OpenBabel::OBElementTable::GetSymbol(int)' /usr/bin/ld: CMakeFiles/avogadro.dir/periodictableview.cpp.o: in function Avogadro::PeriodicTableView::keyPressEvent(QKeyEvent*)':
/home/florians/Downloads/avogadro-git/libavogadro/src/periodictableview.cpp:97: undefined reference to OpenBabel::etab' /usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/periodictableview.cpp:97: undefined reference to OpenBabel::OBElementTable::GetAtomicNum(char const*)'
/usr/bin/ld: engines/bsdyengine.a(bsdyengine.cpp.o): in function Avogadro::(anonymous namespace)::radiusVdW(Avogadro::Atom const*)': /home/florians/Downloads/avogadro-git/libavogadro/src/engines/bsdyengine.cpp:99: undefined reference to OpenBabel::etab'
/usr/bin/ld: engines/bsdyengine.a(bsdyengine.cpp.o): in function Avogadro::(anonymous namespace)::radiusCovalent(Avogadro::Atom const*)': /home/florians/Downloads/avogadro-git/libavogadro/src/engines/bsdyengine.cpp:94: undefined reference to OpenBabel::etab'
/usr/bin/ld: engines/bsdyengine.a(bsdyengine.cpp.o): in function Avogadro::(anonymous namespace)::radiusVdW(Avogadro::Atom const*)': /home/florians/Downloads/avogadro-git/libavogadro/src/engines/bsdyengine.cpp:99: undefined reference to OpenBabel::OBElementTable::GetVdwRad(int)'
/usr/bin/ld: engines/bsdyengine.a(bsdyengine.cpp.o): in function Avogadro::(anonymous namespace)::radiusCovalent(Avogadro::Atom const*)': /home/florians/Downloads/avogadro-git/libavogadro/src/engines/bsdyengine.cpp:94: undefined reference to OpenBabel::OBElementTable::GetCovalentRad(int)'
/usr/bin/ld: colors/elementcolor.a(elementcolor.cpp.o): in function Avogadro::ElementColor::setFromPrimitive(Avogadro::Primitive const*)': /home/florians/Downloads/avogadro-git/libavogadro/src/colors/elementcolor.cpp:51: undefined reference to OpenBabel::etab'
/usr/bin/ld: /home/florians/Downloads/avogadro-git/libavogadro/src/colors/elementcolor.cpp:51: undefined reference to `OpenBabel::OBElementTable::GetRGB(int)'
collect2: Fehler: ld gab 1 als Ende-Status zurück
make[2]: *** [libavogadro/src/CMakeFiles/avogadro.dir/build.make:1717: lib/libavogadro.so.1.2.0] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:678: libavogadro/src/CMakeFiles/avogadro.dir/all] Fehler 2
make: *** [Makefile:172: all] Fehler 2

`

I think you're trying to compile Avogadro 1.2 with Open Babel 3.x, which broke backward compatibility.