After last week changes, I have new cross compiling troubles. See below : In attachment Makefile I use. (make distclean; make update-sources; make) -------------- Making install in framework make[5]: Entering directory `/root/win32/ekiga/lib/engine/framework'/bin/sh ../../../libtool --tag=CXX --mode=link i586-mingw32msvc-g++ -mms-bitfields -I/root/win32/include/sigc++-2.0 -I/root/win32/lib/sigc++-2.0/include -mms-bitfields -I/root/win32/include/glib-2.0 -I/root/win32/lib/glib-2.0/include -I/root/win32/include/libxml2 -I/root/win32/include -march=pentium-mmx -DPTRACING -mwindows -Wall -Wextra -Winit-self -Wswitch-default -Wswitch-enum -Wstrict-aliasing=2 -Wfloat-equal -Wshadow -DSTATIC_LIBS_USED -shared -module -no-undefined -avoid-version -L/root/win32/lib -march=pentium-mmx -o libgmframework.la -rpath /root/win32/dist/Ekiga form.lo robust-xml.lo gmconf-bridge.lo menu-builder.lo menu-builder-tools.lo form-builder.lo form-dumper.lo form-request-simple.lo runtime-glib.lo services.lo menu-xml.lo kickstart.lo ../../../lib/gmconf/libgmconf.la -L/root/win32/lib -lsigc-2.0 -L/root/win32/lib -lgmodule-2.0 -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lintl -L/root/win32/lib -lxml2
rm -fr .libs/libgmframework.dll.ai586-mingw32msvc-g++ -mms-bitfields -shared -nostdlib /usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj/../../../../i586-mingw32msvc/lib/dllcrt2.o /usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj/crtbegin.o .libs/form.o .libs/robust-xml.o .libs/gmconf-bridge.o .libs/menu-builder.o .libs/menu-builder-tools.o .libs/form-builder.o .libs/form-dumper.o .libs/form-request-simple.o .libs/runtime-glib.o .libs/services.o .libs/menu-xml.o .libs/kickstart.o -Wl,--whole-archive ../../../lib/gmconf/.libs/libgmconf.a -Wl,--no-whole-archive -L/root/win32/lib /root/win32/lib/libsigc-2.0.dll.a -lgmodule-2.0 -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lintl /root/win32/lib/libxml2.dll.a -L/usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj -L/usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj/../../../../i586-mingw32msvc/lib -lstdc++ -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -lgdi32 -lcomdlg32 -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt /usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj/crtend.o -mms-bitfields -mms-bitfields -march=pentium-mmx -mwindows -march=pentium-mmx -o .libs/libgmframework.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libgmframework.dll.a
Creating library file: .libs/libgmframework.dll.a../../../lib/gmconf/.libs/libgmconf.a(gmconf-glib.o):gmconf-glib.c:(.text+0x1f52): undefined reference to `_win32_sysconfdir'
collect2: ld returned 1 exit status make[5]: *** [libgmframework.la] Error 1 make[5]: Leaving directory `/root/win32/ekiga/lib/engine/framework' make[4]: *** [install-recursive] Error 1 make[4]: Leaving directory `/root/win32/ekiga/lib/engine' make[3]: *** [install-recursive] Error 1 make[3]: Leaving directory `/root/win32/ekiga/lib' make[2]: *** [install] Error 2 make[2]: Leaving directory `/root/win32/ekiga/lib' make[1]: *** [install-recursive] Error 1 make[1]: Leaving directory `/root/win32/ekiga' make: *** [/root/win32/dist/zips] Error 2 Michael Rickmann wrote:
Am Montag, den 29.06.2009, 14:19 +0200 schrieb Julien Puydt:Michael Rickmann a écrit :<big snip>I pushed all your changes in.Thanks, I will test it as soon as possible. It should be ok, one never knows.There's something I don't get : why do you want to download ekiga if you already have it on disk?make tries to move the download if it finds it at the most probable location: ifeq ($(wildcard $(SRCDIR)/$(EKIGA_ARCHIVE)),) ifneq ($(wildcard $(BUILDROOT)/../$(EKIGA_ARCHIVE)/.git),) update-ekiga: echo --- Moving Ekiga master... $(MV) $(BUILDROOT)/../$(EKIGA_ARCHIVE) $(SRCDIR) else .... I and the Makefile are just used to have all sources in one subdir.Perhaps it's something you don't know about autotools : they allow out-of-tree builds. You have your sources in $WHATEVER_DIR, but want to build in $THIS_DIR :$ mkdir -p $THIS_DIR $ cd $THIS_DIR $ $WHATEVER_DIR/configure $CONFFLAGS $ make This will build the usual program ; if in another console you do : $ ~/bin/setup_for_cross_compile $ mkdir -p $(THIS_DIR)_cross $ cd $(THIS_DIR)_cross $ $WHATEVER_DIR/configure $CROSS_CONFFLAGS $ makeThen the same sources will be built with very different options in different directories.Now I remember, I used that when I was building the cross tools myself, gcc uses that scheme.Hope this helps,It may come in the next revision of the Makefile for a couple of sources. For those sources, which we are working on, copying the source and building in tree was what the Makefile was providing for up to now, but building from a separate git clone may be even easier.Snark _______________________________________________Thanks Michael _______________________________________________ Ekiga-devel-list mailing list Ekiga-devel-list gnome org http://mail.gnome.org/mailman/listinfo/ekiga-devel-list
-- Thierry Simonnet ESIEE-Paris Par respect pour l’environnement, n’imprimez ce mail que si nécessaire
Attachment:
Makefile.gz
Description: application/gzip