Avogadro "super" build on Mac

I’m having trouble compiling the superpackage build on Mac. I can build the “normal” package just fine.

Here are the details:

  • I’m using the latest avogadro-super from Cryos
  • My nightly build script removes the previous build directory, re-runs “cmake” from scratch, and starts to build.
  • CMakeCache.txt does not show an OPENBABEL_INCLUDES line.
  • “make VERBOSE=1” does look like it’s including the build/openbabel/include directory where babelconfig.h lives

but…

/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:63:35: error: missing binary operator before token “(”
/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:100:36: error: missing binary operator before token “(”
/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:1222:36: error: missing binary operator before token “(”
/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:1369:36: error: missing binary operator before token “(”

These are all of the version check macros.

Any ideas? Marcus, you said you had a new Mac to test the build. Are you seeing this with the superpackage?

Thanks,
-Geoff

I’m having trouble compiling the superpackage build on Mac. I can build
the “normal” package just fine.

Here are the details:

  • I’m using the latest avogadro-super from Cryos
  • My nightly build script removes the previous build directory, re-runs
    "cmake" from scratch, and starts to build.
  • CMakeCache.txt does not show an OPENBABEL_INCLUDES line.
  • “make VERBOSE=1” does look like it’s including the
    build/openbabel/include directory where babelconfig.h lives

They won’t show up in the cache, that is expected as they are set at build
time.

but…

/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:63:35:
error: missing binary operator before token “(”
/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:100:36:
error: missing binary operator before token “(”
/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:1222:36:
error: missing binary operator before token “(”
/Volumes/Home/ghutchis/Devel/avogadro-super/avogadro/libavogadro/src/molecule.cpp:1369:36:
error: missing binary operator before token “(”

These are all of the version check macros.

Is it possible that there is a stale babelconfig.h? The changes were
apparently not compatible with older Open Babel headers, and if you have
stale headers earlier in the includes that may cause this. I do not have
an Open Babel in /usr/local etc. I did try a fresh build on my Mac (latest
updates, fairly standard environment) and did not have any problems
building.

Any ideas? Marcus, you said you had a new Mac to test the build. Are you
seeing this with the superpackage?

No, I even tried a fresh build with a new build tree. Looks fine here. We
might need to do something to the include directories in Avogadro to
ensure the selected Open Babel is always first, if that is what is causing
the issue. If you can verify that is the case, it shouldn’t be too hard to
fix. It builds and runs fine here though on the Mac.

Marcus

I’m having trouble compiling the superpackage build on Mac. I can build
the “normal” package just fine.

Here are the details:

  • I’m using the latest avogadro-super from Cryos
  • My nightly build script removes the previous build directory, re-runs
    "cmake" from scratch, and starts to build.
  • CMakeCache.txt does not show an OPENBABEL_INCLUDES line.
  • “make VERBOSE=1” does look like it’s including the
    build/openbabel/include directory where babelconfig.h lives

They won’t show up in the cache, that is expected as they are set at build
time.

I forgot to mention - did you check that the Avogadro and Open Babel
submodules are up to date? They should both be checked out on master, and
do a pull to ensure all of the latest changes are available. I assume you
have done this, but wanted to double check as a new Avogadro + old Open
Babel could cause the issue you are seeing.

Marcus

have done this, but wanted to double check as a new Avogadro + old Open
Babel could cause the issue you are seeing.

No, I figured it out. For some reason I had an old “babelconfig.h” in my source directory. Ugh.

Everything seems to build correctly now. Sorry for the false alarm.

-Geoff