GNOME Bugzilla – Bug 160014
Aisleriot doesn't check for the correct version of guile.
Last modified: 2004-12-22 21:47:04 UTC
1 Download garnome-2.9.1. 2 Update garnome-2.9.1 with the latest gnome updates including gnome-games 3 start the compile 4 gnome-games stops compilation with the following compilation error list (the last bit of this bug report I'm using gcc-3.4.2, glibc-2.3.3, kernel-2.6.10-rc2-mm3 to compile garnome-2.9.1+ and gnome-games-2.9.2.1 ccache gcc -g -I/usr/test/garnome3/include -I/usr/X11R6/include -O2 -pipe -mtune=athlon-tbird -m3dnow -DNO_HOWL -o sol sol.o slot.o dialog.o cscmi.o events.o press_data.o draw.o menu.o card.o statistics.o -Wl,--export-dynamic -L/usr/test/garnome3/lib -L/usr/X11R6/lib -pthread /usr/test/garnome3/lib/libglade-2.0.so /usr/test/garnome3/lib/libgnomeui-2.so -L/usr/local/lib /usr/test/garnome3/lib/libgnome-keyring.so -ljpeg /usr/test/garnome3/lib/libbonoboui-2.so -lSM -lICE -lX11 /usr/test/garnome3/lib/libgnomecanvas-2.so /usr/test/garnome3/lib/libgnome-2.so /usr/test/garnome3/lib/libesd.so /usr/lib/libasound.so /usr/test/garnome3/lib/libaudiofile.so /usr/test/garnome3/lib/libgtk-x11-2.0.so /usr/test/garnome3/lib/libgdk-x11-2.0.so /usr/test/garnome3/lib/libatk-1.0.so /usr/test/garnome3/lib/libpangoxft-1.0.so /usr/test/garnome3/lib/libpangox-1.0.so /usr/test/garnome3/lib/librsvg-2.so /usr/test/garnome3/lib/libart_lgpl_2.so /usr/test/garnome3/lib/libpangoft2-1.0.so /usr/test/garnome3/lib/libpango-1.0.so /usr/test/garnome3/lib/libgsf-1.so -lbz2 /usr/test/garnome3/lib/libcroco-0.6.so /usr/test/garnome3/lib/libgnomevfs-2.so /usr/test/garnome3/lib/libxml2.so -lz -lssl -lcrypto -lresolv -lrt /usr/test/garnome3/lib/libbonobo-2.so /usr/test/garnome3/lib/libgconf-2.so /usr/test/garnome3/lib/libbonobo-activation.so /usr/test/garnome3/lib/libORBitCosNaming-2.so /usr/test/garnome3/lib/libORBit-2.so /usr/local/lib/libpopt.so /usr/test/garnome3/lib/libgthread-2.0.so /usr/test/garnome3/lib/libgdk_pixbuf-2.0.so /usr/test/garnome3/lib/libgobject-2.0.so /usr/test/garnome3/lib/libgmodule-2.0.so /usr/test/garnome3/lib/libglib-2.0.so ../libgames-support/.libs/libgames-support.a -L/usr/lib /usr/lib/libguile.so -ldl /usr/lib/libqthreads.so -lpthread -lm -Wl,--rpath -Wl,/usr/test/garnome3/lib -Wl,--rpath -Wl,/usr/test/garnome3/lib sol.o(.text+0x18e): In function `eval_installed_file': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/sol.c:160: undefined reference to `scm_c_primitive_load' sol.o(.text+0x501): In function `new_game': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/sol.c:248: undefined reference to `scm_c_eval_string' sol.o(.text+0x51e):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/sol.c:250: undefined reference to `scm_num2double' sol.o(.text+0x542):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/sol.c:250: undefined reference to `scm_num2double' sol.o(.text+0x12e): In function `eval_installed_file': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/sol.c:149: undefined reference to `scm_c_primitive_load' dialog.o(.text+0xaa9): In function `show_hint_dialog': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:270: undefined reference to `scm_num2int' dialog.o(.text+0xb5c):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:283: undefined reference to `SCM_STRING_CHARS' dialog.o(.text+0xb6e):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:284: undefined reference to `SCM_STRING_CHARS' dialog.o(.text+0xbae):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:273: undefined reference to `SCM_STRING_CHARS' dialog.o(.text+0xbc0):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:296: undefined reference to `SCM_STRING_CHARS' dialog.o(.text+0xbfc):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:289: undefined reference to `SCM_STRING_CHARS' dialog.o(.text+0xc0e):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/dialog.c:290: more undefined references to `SCM_STRING_CHARS' follow cscmi.o(.text+0x4de): In function `scm_set_slot_y_expansion': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:196: undefined reference to `scm_num2int' cscmi.o(.text+0x52e): In function `scm_set_slot_x_expansion': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:203: undefined reference to `scm_num2int' cscmi.o(.text+0x585): In function `scm_get_slot': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:211: undefined reference to `scm_num2int' cscmi.o(.text+0x60f): In function `scm_set_cards': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:224: undefined reference to `scm_num2int' cscmi.o(.text+0x74d): In function `scm_set_score': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:275: undefined reference to `scm_num2int' cscmi.o(.text+0x78d):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:282: more undefined references to `scm_num2int' follow cscmi.o(.text+0x82e): In function `cscm_init': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:300: undefined reference to `scm_c_define_gsubr' cscmi.o(.text+0x85a):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:301: undefined reference to `scm_c_define_gsubr' cscmi.o(.text+0x886):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:302: undefined reference to `scm_c_define_gsubr' cscmi.o(.text+0x8b2):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:303: undefined reference to `scm_c_define_gsubr' cscmi.o(.text+0x8de):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:304: undefined reference to `scm_c_define_gsubr' cscmi.o(.text+0x90a):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:305: more undefined references to `scm_c_define_gsubr' follow cscmi.o(.text+0xb8a): In function `cscmi_call_lambda': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:339: undefined reference to `scm_call_0' cscmi.o(.text+0xbb4):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:345: undefined reference to `scm_call_2' cscmi.o(.text+0xbe1):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:348: undefined reference to `scm_call_3' cscmi.o(.text+0xbf4):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:342: undefined reference to `scm_call_1' cscmi.o(.text+0xd50): In function `cscmi_catch_handler': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/cscmi.c:381: undefined reference to `scm_mem2string' events.o(.text+0xce): In function `end_of_game_test': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:114: undefined reference to `scm_c_eval_string' events.o(.text+0x233): In function `drop_moving_cards': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:153: undefined reference to `scm_c_eval_string' events.o(.text+0x495): In function `button_press_event': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:266: undefined reference to `scm_c_eval_string' events.o(.text+0x4a9):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:266: undefined reference to `scm_call_2' events.o(.text+0x4d5):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:269: undefined reference to `scm_c_eval_string' events.o(.text+0x4dd):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:269: undefined reference to `scm_call_0' events.o(.text+0x5dc):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:271: undefined reference to `scm_c_eval_string' events.o(.text+0x5e4):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:271: undefined reference to `scm_call_0' events.o(.text+0x83c): In function `button_release_event': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:311: undefined reference to `scm_c_eval_string' events.o(.text+0x850):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:311: undefined reference to `scm_call_2' events.o(.text+0x87d):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:316: undefined reference to `scm_c_eval_string' events.o(.text+0x885):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/events.c:316: undefined reference to `scm_call_0' press_data.o(.text+0x49e): In function `generate_press_data': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/press_data.c:122: undefined reference to `scm_c_eval_string' press_data.o(.text+0x4b1):/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/press_data.c:122: undefined reference to `scm_call_2' menu.o(.text+0x89): In function `undo_callback': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/menu.c:71: undefined reference to `scm_c_eval_string' menu.o(.text+0xb9): In function `redo_callback': /usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot/menu.c:78: undefined reference to `scm_c_eval_string' collect2: ld returned 1 exit status make[5]: *** [sol] Error 1 make[5]: Leaving directory `/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1/aisleriot' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/download/garnome-2.9.1/desktop/gnome-games/work/main.d/gnome-games-2.9.2.1' make[1]: *** [build-work/main.d/gnome-games-2.9.2.1/Makefile] Error 2 make[1]: Leaving directory `/usr/download/garnome-2.9.1/desktop/gnome-games' make: *** [paranoid-install] Error 2
What version of guile do you have ? We switched from the gh interface to the scm interface because we believe the gh interface is going away soon. I had thought the scm interface had been around for a while, it appears I am wrong.
I was running version 1.4. Upgrading to 1.6.6 solved my issue thanks.
Actually it is a bug since we should be supporting the older guile. At the very least I need to change the minimum version number in configure.in. I have reopened the bug, although obviously you can ignore it from now on :).
guile-1.6.x came out over two years ago. I don't think we need to support the older versions, given that we have much tougher dependencies w/in gnome (such as libxklavier, GTK+-2.6, etc.) Callum, lets just close this one.
I can't close it until I get back home to change configure.in in the repository :). (CVS is firewalled at work.) One argument against raising the requirement is that guile 1.6 is not strictly backward compatible with guile 1.4. For example, eval changed its number of arguments to be r5rs compliant (aisleriot has code to work around this). So upgrading guile may require many other upgrades (as far as I am aware guile has no parallel installation scheme). However most people with old distros installing a modern gnome will have a separate tree for it and can install the new guile there too.
Hmrph. Configure checks the version now, but neither the standard guile autoconf macros or the one prepackaged in gnome-games where any help. The result isn't perfect, but it is reliable.