[Mono-dev] libtool version mismatch

autif khan autif.mlist at gmail.com
Tue Jan 24 15:22:11 UTC 2012


I have been working on writing a recipe for mono for open embedded
(OE). I have successfully
written one for lbgdiplus and am making headway with mono.

Mono comes with libtool version 2.2.6, OE uses 2.4

After ./configure, when make is being executed, I am
getting the following error for the following command:

Command:
/bin/sh ./libtool --mode=compile i586-poky-linux-gcc  -m32
-march=core2 -msse3 -mtune=generic -mfpmath=sse
--sysroot=/home/autif/data2/nosync/dev/yocto/kokosdk/tmp/sysroots/crownbay
-DPACKAGE_NAME=\"libgc-mono\" -DPACKAGE_TARNAME=\"libgc-mono\"
-DPACKAGE_VERSION=\"6.6\" -DPACKAGE_STRING=\"libgc-mono\ 6.6\"
-DPACKAGE_BUGREPORT=\"Hans_Boehm at hp.com\" -DPACKAGE_URL=\"\"
-DGC_LINUX_THREADS=1 -D_REENTRANT=1 -DPARALLEL_MARK=1
-DTHREAD_LOCAL_ALLOC=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
-DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1
-DLT_OBJDIR=\".libs/\" -DSILENT=1 -DNO_SIGNALS=1
-DNO_EXECUTE_PERMISSION=1 -DJAVA_FINALIZATION=1 -DGC_GCJ_SUPPORT=1
-DATOMIC_UNCOLLECTABLE=1 -D_IN_LIBGC=1 -I./.. -I./.. -I./include
-DGC_LINUX_THREADS -D_GNU_SOURCE -D_REENTRANT -DUSE_MMAP -DUSE_MUNMAP
-O2 -pipe -g -feliminate-unused-debug-types -g
-mno-tls-direct-seg-refs   -MT allchblk.lo -MD -MP -MF
.deps/allchblk.Tpo -c -o allchblk.lo allchblk.c

Error:
| libtool: Version mismatch error.  This is libtool 2.4, but the
| libtool: definition of this LT_INIT comes from libtool 2.2.6.
| libtool: You should recreate aclocal.m4 with macros from libtool 2.4
| libtool: and run autoconf again.
| make[3]: *** [allchblk.lo] Error 63

Here is how LT_INIT is defined in aclocal.m4:
# LT_INIT([OPTIONS])
# ------------------
AC_DEFUN([LT_INIT],
[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
AC_BEFORE([$0], [LT_LANG])dnl
AC_BEFORE([$0], [LT_OUTPUT])dnl
AC_BEFORE([$0], [LTDL_INIT])dnl
m4_require([_LT_CHECK_BUILDDIR])dnl

dnl Autoconf doesn't catch unexpanded LT_ macros by default:
m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
dnl unless we require an AC_DEFUNed macro:
AC_REQUIRE([LTOPTIONS_VERSION])dnl
AC_REQUIRE([LTSUGAR_VERSION])dnl
AC_REQUIRE([LTVERSION_VERSION])dnl
AC_REQUIRE([LTOBSOLETE_VERSION])dnl
m4_require([_LT_PROG_LTMAIN])dnl

dnl Parse OPTIONS
_LT_SET_OPTIONS([$0], [$1])

# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ltmain"

# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
AC_SUBST(LIBTOOL)dnl

_LT_SETUP

# Only expand once:
m4_define([LT_INIT])
])# LT_INIT

What changes should be made to the auto tools files to fix this?

PS - by no means am I suggesting that mono should upgrade to libtool
2.4, I want to make these changes and submit a patch to OE that goes
along with the recipe.

Thanks!

Autif


More information about the Mono-devel-list mailing list