If you are receiving the following error when compiling mono 4.x “Version mismatch error. This is libtool 2.4.6, but the definition of this LT_INIT comes from libtool 2.4.2.”, then the aclocal.m4 file needs to be rebuilt. It appears something in the mono autogen/configure and/or make clean is not deleting and rebuilding it (or is picking an older libtool vs. actually using glibtool).
I have find that the “libgc/aclocal.m4” has been my main problem:
.... make: Nothing to be done for `all-am'. Making all in doc make: Nothing to be done for `all'. CC pthread_support.lo libtool: Version mismatch error. This is libtool 2.4.6, but the libtool: definition of this LT_INIT comes from libtool 2.4.2. libtool: You should recreate aclocal.m4 with macros from libtool 2.4.6 libtool: and run autoconf again. make: *** [pthread_support.lo] Error 63 make: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1 make: *** [all] Error 2
Remove that file:
And re-run the make and it will be recreated correctly.