* [1.9.12][OpenBSD] run time failure ... @ 2010-09-08 19:21 primus 2010-09-08 19:46 ` Andy Wingo 0 siblings, 1 reply; 20+ messages in thread From: primus @ 2010-09-08 19:21 UTC (permalink / raw) To: bug-guile [-- Attachment #1: Type: text/plain, Size: 1043 bytes --] Wed Sep 8 20:13:16 BST 2010 Hi Ludo, Attached is a tar, bzip2 file containing: config.log configure.l2g gmake_all.l2g configure was run as: env CPPFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" ./configure --without-threads 2>&1 | tee -a configure.l2g gmake was run as: gmake all 2>&1 | tee gmake_all.l2g Failure is at: (won't know where to start debugging this - scheme land now). gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' GUILEC ice-9/eval.go guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>)) ((#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>))) gmake[2]: *** [ice-9/eval.go] Error 1 gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/module' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/usr/obj/micro/guile-1.9.12' gmake: *** [all] Error 2 -- -primus "It isn't what you make, it's what you don't lose!" [-- Attachment #2: OpenBSD-4.7_guile-1.9.12_build-logs.tar.bz2 --] [-- Type: application/octet-stream, Size: 60171 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-08 19:21 [1.9.12][OpenBSD] run time failure primus @ 2010-09-08 19:46 ` Andy Wingo 2010-09-08 20:07 ` primus ` (2 more replies) 0 siblings, 3 replies; 20+ messages in thread From: Andy Wingo @ 2010-09-08 19:46 UTC (permalink / raw) To: primus; +Cc: bug-guile Hi, On Wed 08 Sep 2010 21:21, primus <rprimus@gmail.com> writes: > Failure is at: (won't know where to start debugging this - scheme land now). > > gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' > GUILEC ice-9/eval.go > guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>)) ((#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>))) Ew. What version of libgc do you have? If you are able to attach to the guile process while it is building, break on scm_ithrow and send the backtrace. You can edit meta/guile-tools and replace "exec guile" with "exec gdb-uninstalled-guile", then when you get a gdb prompt after typing "make", you can "break scm_ithrow", then "run", then "bt full" when you hit the error. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-08 19:46 ` Andy Wingo @ 2010-09-08 20:07 ` primus 2010-09-08 21:58 ` Ludovic Courtès 2010-09-08 22:12 ` primus 2010-09-08 23:06 ` [1.9.12][OpenBSD] CFLAGS="-g -O0" " primus 2 siblings, 1 reply; 20+ messages in thread From: primus @ 2010-09-08 20:07 UTC (permalink / raw) To: bug-guile [-- Attachment #1: Type: text/plain, Size: 2780 bytes --] On Wed, Sep 08, 2010 at 09:46:41PM +0200, Andy Wingo wrote: > Hi, > > On Wed 08 Sep 2010 21:21, primus <rprimus@gmail.com> writes: > > > Failure is at: (won't know where to start debugging this - scheme land now). > > > > gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' > > GUILEC ice-9/eval.go > > guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>)) ((#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>))) > > Ew. What version of libgc do you have? Wed Sep 8 21:01:19 BST 2010 Hi Andy, # pkg_info | grep boehm boehm-gc-7.0p2 garbage collection and memory leak detection for C and C++ # for i in `pkg_info -L boehm-gc-7.0p2 | grep lib`;do ls -la $i done -rw-r--r-- 1 root bin 41461 Mar 18 15:24 /usr/local/lib/libcord.so.2.3 -rw-r--r-- 1 root bin 146136 Mar 18 15:24 /usr/local/lib/libgc.so.3.0 -rw-r--r-- 1 root bin 36106 Mar 18 15:24 /usr/local/lib/libcord.a -rw-r--r-- 1 root bin 816 Mar 18 15:24 /usr/local/lib/libcord.la -rw-r--r-- 1 root bin 172748 Mar 18 15:24 /usr/local/lib/libgc.a -rw-r--r-- 1 root bin 780 Mar 18 15:24 /usr/local/lib/libgc.la -r--r--r-- 1 root bin 269 Mar 18 15:24 /usr/local/lib/pkgconfig/bdw-gc.pc > > If you are able to attach to the guile process while it is building, > break on scm_ithrow and send the backtrace. You can edit > meta/guile-tools and replace "exec guile" with "exec > gdb-uninstalled-guile", then when you get a gdb prompt after typing > "make", you can "break scm_ithrow", then "run", then "bt full" when you > hit the error. Have attached gmake_all.l3g backtrace: Starting program: /usr/obj/micro/guile-1.9.12/libguile/guile -e \(@@\ \(guile-tools\)\ main\) -s /usr/obj/micro/guile-1.9.12/met a/guile-tools compile -Wunbound-variable -Warity-mismatch -o ice-9/eval.go ice-9/eval.scm [Switching to process 25962, thread 0x7faf7400] Breakpoint 1, scm_ithrow (key=0x3c0788a0, args=0x3d4094d0, noreturn=1) at throw.c:453 453 } (gdb) bt full #0 scm_ithrow (key=0x3c0788a0, args=0x3d4094d0, noreturn=1) at throw.c:453 No locals. #1 0x1c0904fd in scm_error_scm (key=0x3c0788a0, subr=0x3d4fff50, message=0x3d4fe050, args=0x3d4094f8, data=0x4) at error.c:94 No locals. #2 0x1c090615 in scm_error (key=Could not find the frame base for "scm_error". ) at error.c:60 No locals. #3 0x1c090650 in scm_misc_error (subr=Could not find the frame base for "scm_misc_error". ) at error.c:283 No locals. #4 0x1c068902 in scm_dynamic_link (filename=Variable "filename" is not available. ) at dynl.c:93 file = Variable "file" is not available. (gdb) quit -- -primus "It isn't what you make, it's what you don't lose!" [-- Attachment #2: gmake_all.l3g --] [-- Type: text/plain, Size: 6760 bytes --] gmake all-recursive gmake[1]: Entering directory `/usr/obj/micro/guile-1.9.12' Making all in lib gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/lib' gmake all-recursive gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/lib' gmake[4]: Entering directory `/usr/obj/micro/guile-1.9.12/lib' gmake[4]: Nothing to be done for `all-am'. gmake[4]: Leaving directory `/usr/obj/micro/guile-1.9.12/lib' gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/lib' gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/lib' Making all in meta gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/meta' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/meta' Making all in libguile gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/libguile' gmake all-am gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/libguile' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/libguile' gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/libguile' Making all in guile-readline gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/guile-readline' gmake all-am gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/guile-readline' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/guile-readline' gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/guile-readline' Making all in emacs gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/emacs' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/emacs' Making all in srfi gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/srfi' gmake all-am gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/srfi' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/srfi' gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/srfi' Making all in examples gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/examples' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/examples' Making all in test-suite gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/test-suite' Making all in standalone gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/test-suite/standalone' gmake all-am gmake[4]: Entering directory `/usr/obj/micro/guile-1.9.12/test-suite/standalone' gmake[4]: Nothing to be done for `all-am'. gmake[4]: Leaving directory `/usr/obj/micro/guile-1.9.12/test-suite/standalone' gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/test-suite/standalone' Making all in vm gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/test-suite/vm' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/test-suite/vm' gmake[3]: Entering directory `/usr/obj/micro/guile-1.9.12/test-suite' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/obj/micro/guile-1.9.12/test-suite' gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/test-suite' Making all in benchmark-suite gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/benchmark-suite' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/benchmark-suite' Making all in am gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/am' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/obj/micro/guile-1.9.12/am' Making all in module gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' GUILEC ice-9/eval.go GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-unknown-openbsd4.2"... (gdb) break scm_ithrow Breakpoint 1 at 0x1c051903: file throw.c, line 453. (gdb) run Starting program: /usr/obj/micro/guile-1.9.12/libguile/guile -e \(@@\ \(guile-tools\)\ main\) -s /usr/obj/micro/guile-1.9.12/meta/guile-tools compile -Wunbound-variable -Warity-mismatch -o ice-9/eval.go ice-9/eval.scm [Switching to process 25962, thread 0x7faf7400] Breakpoint 1, scm_ithrow (key=0x3c0788a0, args=0x3d4094d0, noreturn=1) at throw.c:453 453 } (gdb) bt full #0 scm_ithrow (key=0x3c0788a0, args=0x3d4094d0, noreturn=1) at throw.c:453 No locals. #1 0x1c0904fd in scm_error_scm (key=0x3c0788a0, subr=0x3d4fff50, message=0x3d4fe050, args=0x3d4094f8, data=0x4) at error.c:94 No locals. #2 0x1c090615 in scm_error (key=Could not find the frame base for "scm_error". ) at error.c:60 No locals. #3 0x1c090650 in scm_misc_error (subr=Could not find the frame base for "scm_misc_error". ) at error.c:283 No locals. #4 0x1c068902 in scm_dynamic_link (filename=Variable "filename" is not available. ) at dynl.c:93 file = Variable "file" is not available. (gdb) quit The program is running. Exit anyway? (y or n) touch -t 198001010100 ./ice-9/eval.scm touch -r ./ice-9/eval.scm ice-9/eval.go touch -r ./ice-9/eval.scm ice-9/eval.go.stamp GUILE_AUTO_COMPILE=0 \ ../meta/uninstalled-env \ guile-tools compile -Wunbound-variable -Warity-mismatch -o "ice-9/psyntax-pp.go" "./ice-9/psyntax.scm" GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-unknown-openbsd4.2"... (gdb) touch -r "./ice-9/psyntax.scm" "./ice-9/psyntax-pp.scm" GUILEC ice-9/boot-9.go GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-unknown-openbsd4.2"... (gdb) exit Undefined command: "exit". Try "help". (gdb) quit GUILEC language/tree-il.go GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-unknown-openbsd4.2"... (gdb) ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-08 20:07 ` primus @ 2010-09-08 21:58 ` Ludovic Courtès 0 siblings, 0 replies; 20+ messages in thread From: Ludovic Courtès @ 2010-09-08 21:58 UTC (permalink / raw) To: bug-guile Hi, primus <rprimus@gmail.com> writes: > On Wed, Sep 08, 2010 at 09:46:41PM +0200, Andy Wingo wrote: >> On Wed 08 Sep 2010 21:21, primus <rprimus@gmail.com> writes: >> >> > Failure is at: (won't know where to start debugging this - scheme land now). >> > >> > gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' >> > GUILEC ice-9/eval.go >> > guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>)) ((#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>))) [...] > #3 0x1c090650 in scm_misc_error (subr=Could not find the frame base for "scm_misc_error". > ) at error.c:283 > No locals. > #4 0x1c068902 in scm_dynamic_link (filename=Variable "filename" is not available. > ) at dynl.c:93 > file = Variable "file" is not available. > (gdb) quit I think it failed to dlopen libguile-srfi-srfi-1*.so [*]. Does Libtool emit warnings such as: Warning: This system can not link to static lib archive ../libguile/libguile-2.0.la. ? Can you post a gzipped version of your ‘config.log’ file? Thanks, Ludo’. [*] That happens on Cygwin, too: <http://hydra.nixos.org/build/626036>. ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-08 19:46 ` Andy Wingo 2010-09-08 20:07 ` primus @ 2010-09-08 22:12 ` primus 2010-09-10 8:39 ` Andy Wingo 2010-09-08 23:06 ` [1.9.12][OpenBSD] CFLAGS="-g -O0" " primus 2 siblings, 1 reply; 20+ messages in thread From: primus @ 2010-09-08 22:12 UTC (permalink / raw) To: bug-guile [-- Attachment #1: Type: text/plain, Size: 1164 bytes --] On Wed, Sep 08, 2010 at 09:46:41PM +0200, Andy Wingo wrote: > Hi, > > On Wed 08 Sep 2010 21:21, primus <rprimus@gmail.com> writes: > > > Failure is at: (won't know where to start debugging this - scheme land now). > > > > gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' > > GUILEC ice-9/eval.go > > guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>)) ((#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>))) > > Ew. What version of libgc do you have? > > If you are able to attach to the guile process while it is building, > break on scm_ithrow and send the backtrace. You can edit > meta/guile-tools and replace "exec guile" with "exec > gdb-uninstalled-guile", then when you get a gdb prompt after typing > "make", you can "break scm_ithrow", then "run", then "bt full" when you > hit the error. Wed Sep 8 23:08:12 BST 2010 backtrace with new cvs libgc. Have included new *.l6g* files: *.l6g_dbg_ contains backtrace -- -primus "It isn't what you make, it's what you don't lose!" [-- Attachment #2: OpenBSD-4.7_guile-1.9.12_libgc-cvs.tar.bz2 --] [-- Type: application/octet-stream, Size: 7144 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-08 22:12 ` primus @ 2010-09-10 8:39 ` Andy Wingo 2010-09-10 13:47 ` primus 2010-09-10 21:29 ` [1.9.12][OpenBSD] " Ludovic Courtès 0 siblings, 2 replies; 20+ messages in thread From: Andy Wingo @ 2010-09-10 8:39 UTC (permalink / raw) To: primus; +Cc: bug-guile On Thu 09 Sep 2010 00:12, primus <rprimus@gmail.com> writes: > backtrace with new cvs libgc. Thanks. At this point the problems appears to be related to an dynamically-loaded extension, like srfi-1. This looks like you are building a static-only Guile, and we don't usually test that. So... If you type meta/guile -c '(format #t "hello world\n")' that should display hello world. Now we need to figure out what's going on with --disable-shared builds. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-10 8:39 ` Andy Wingo @ 2010-09-10 13:47 ` primus 2010-09-10 14:35 ` Andy Wingo 2010-09-10 21:29 ` [1.9.12][OpenBSD] " Ludovic Courtès 1 sibling, 1 reply; 20+ messages in thread From: primus @ 2010-09-10 13:47 UTC (permalink / raw) To: bug-guile On Fri, Sep 10, 2010 at 10:39:01AM +0200, Andy Wingo wrote: > On Thu 09 Sep 2010 00:12, primus <rprimus@gmail.com> writes: > > > backtrace with new cvs libgc. > > Thanks. At this point the problems appears to be related to an > dynamically-loaded extension, like srfi-1. This looks like you are > building a static-only Guile, and we don't usually test that. Fri Sep 10 14:45:17 BST 2010 Hi Andy, Nowhere do I specify that it should be a static-only build. # ldd ./libguile/guile ./libguile/guile: Start End Type Open Ref GrpRef Name 1c000000 3c042000 exe 1 0 0 ./libguile/guile 095cf000 295d3000 rlib 0 1 0 /usr/local/lib/libffi.so.0.0 0f9a1000 2f9a8000 rlib 0 1 0 /usr/local/lib/libgmp.so.8.0 0afbe000 2afc2000 rlib 0 1 0 /usr/local/lib/libintl.so.4.0 063de000 263f7000 rlib 0 1 0 /usr/local/lib/libgc.so.1.3 09113000 291df000 rlib 0 1 0 /usr/local/lib/libunistring.so.1.2 0372c000 2380b000 rlib 0 2 0 /usr/local/lib/libiconv.so.6.0 05f8f000 25f99000 rlib 0 1 0 /usr/lib/libm.so.5.2 00cf8000 20cfc000 rlib 0 1 0 /usr/local/lib/libltdl.so.4.5 0ae70000 2ae79000 rlib 0 1 0 /usr/lib/libpthread.so.12.1 092e6000 2931d000 rlib 0 1 0 /usr/lib/libc.so.55.0 08b64000 08b64000 rtld 0 1 0 /usr/libexec/ld.so > > So... If you type meta/guile -c '(format #t "hello world\n")' that > should display hello world. Now we need to figure out what's going on > with --disable-shared builds. # meta/guile -c '(format #t "hello world\n")' ;;; note: autocompilation is enabled, set GUILE_AUTO_COMPILE=0 ;;; or pass the --no-autocompile argument to disable. ;;; compiling /usr/obj/micro/guile-1.9.12/module/ice-9/control.scm ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/base/compile.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/base/compile.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/base/syntax.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/base/syntax.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/base/language.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/base/language.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/base/message.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/base/message.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/srfi/srfi-1.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/srfi/srfi-1.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/vm/frame.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/vm/frame.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/base/pmatch.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/base/pmatch.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/system/vm/program.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/system/vm/program.scm ;;; is part of the compiler; skipping autocompilation ;;; compiling /usr/obj/micro/guile-1.9.12/module/srfi/srfi-26.scm ;;; it seems /usr/obj/micro/guile-1.9.12/module/srfi/srfi-26.scm ;;; is part of the compiler; skipping autocompilation guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3c109ff0> #<catch-closure 3c109fe0> #<catch-closure 3c109fd0>)) ((#t #<catch-closure 3c109ff0> #<catch-closure 3c109fe0> #<catch-closure 3c109fd0>))) > > Andy -- -primus "If I had more time, I would have written you a shorter letter" - Pascal "It isn't what you make, it's what you don't lose!" ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-10 13:47 ` primus @ 2010-09-10 14:35 ` Andy Wingo 2010-09-10 15:44 ` primus 2010-09-10 16:44 ` [1.9.12][OpenBSD] [SOLUTION] " primus 0 siblings, 2 replies; 20+ messages in thread From: Andy Wingo @ 2010-09-10 14:35 UTC (permalink / raw) To: primus; +Cc: bug-guile On Fri 10 Sep 2010 15:47, primus <rprimus@gmail.com> writes: > On Fri, Sep 10, 2010 at 10:39:01AM +0200, Andy Wingo wrote: >> On Thu 09 Sep 2010 00:12, primus <rprimus@gmail.com> writes: >> >> > backtrace with new cvs libgc. >> >> Thanks. At this point the problems appears to be related to an >> dynamically-loaded extension, like srfi-1. This looks like you are >> building a static-only Guile, and we don't usually test that. > > Fri Sep 10 14:45:17 BST 2010 > > Hi Andy, > > Nowhere do I specify that it should be a > static-only build. It's statically linking libguile to guile. You sure you didn't pass --disable-shared on the configure line? Surely libtool can make shared libraries on openbsd? > # ldd ./libguile/guile > ./libguile/guile: > Start End Type Open Ref GrpRef Name > 1c000000 3c042000 exe 1 0 0 ./libguile/guile [...] Here guile should probably be a libtool helper script, and libguile/.libs/lt-guile should link to libguile-2.0.so. >> >> So... If you type meta/guile -c '(format #t "hello world\n")' that >> should display hello world. Now we need to figure out what's going on >> with --disable-shared builds. > > # meta/guile -c '(format #t "hello world\n")' > ;;; note: autocompilation is enabled, set GUILE_AUTO_COMPILE=0 > ;;; or pass the --no-autocompile argument to disable. Ah yes. But meta/guile --no-autocompile -c '(format #t "hello world\n")' works? A -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-10 14:35 ` Andy Wingo @ 2010-09-10 15:44 ` primus 2010-09-10 21:37 ` Ludovic Courtès 2010-09-10 16:44 ` [1.9.12][OpenBSD] [SOLUTION] " primus 1 sibling, 1 reply; 20+ messages in thread From: primus @ 2010-09-10 15:44 UTC (permalink / raw) To: bug-guile On Fri, Sep 10, 2010 at 04:35:27PM +0200, Andy Wingo wrote: > > > > Nowhere do I specify that it should be a > > static-only build. > > It's statically linking libguile to guile. You sure you didn't pass > --disable-shared on the configure line? Surely libtool can make shared > libraries on openbsd? Fri Sep 10 16:25:23 BST 2010 configure was run as: env CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" ./configure 2>&1 | tee <logfile> # grep -A1 -i shared config.log configure:9187: checking for shared library run path origin configure:9200: result: done configure:24931: checking whether the gcc -std=gnu99 linker (/usr/bin/ld) supports shared libraries configure:25917: result: yes configure:25977: gcc -std=gnu99 -shared -fPIC -DPIC -o conftest conftest.o -v 2\>\&1 \| /usr/bin/grep -lc \>/dev/null 2\>\&1 configure:25980: $? = 1 configure:27494: checking if libtool supports shared libraries configure:27496: result: yes configure:27499: checking whether to build shared libraries configure:27520: result: yes sharedstatedir='${prefix}/com' sitedir='${datarootdir}/guile/site/2.0' > > > # ldd ./libguile/guile > > ./libguile/guile: > > Start End Type Open Ref GrpRef Name > > 1c000000 3c042000 exe 1 0 0 ./libguile/guile > [...] > > Here guile should probably be a libtool helper script, and > libguile/.libs/lt-guile should link to libguile-2.0.so. # pwd /usr/obj/micro/guile-1.9.12 # find . -name "*.so*" -print # find . -name "*lt-guile*" -print # From logfile *.l6g: posix.c:1844:5: warning: "HAVE_CUSERID" is not defined CC net_db.lo CC socket.lo CC regex-posix.lo CCLD libguile-2.0.la *** Warning: linker path does not have real file for library -lm. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libm and none of the candidates passed a file format test *** using a regex pattern. Last file checked: /usr/local/lib/libiconv.so.4.0 *** The inter-library dependencies that have been dropped here will be *** automatically added whenever a program is linked with this library *** or is declared to -dlopen it. *** Since this library must not contain undefined symbols, *** because either the platform does not support them or *** it was explicitly requested with -no-undefined, *** libtool will only create a static version of it. CC guile-guile.o CCLD guile /usr/local/lib/libgmp.so.8.0: warning: vsprintf() is often misused, please use vsnprintf() ./.libs/libguile-2.0.a(posix.o)(.text+0x253f): In function `scm_tmpnam': /usr/obj/micro/guile-1.9.12/libguile/posix.c:1317: warning: tmpnam() possibly used unsafely; consider using mkstemp() ./.libs/libguile-2.0.a(libguile_2.0_la-load.o)(.text+0x9df): In function `stringbuf_cat': /usr/obj/micro/guile-1.9.12/libguile/load.c:378: warning: strcpy() is almost always misused, please use strlcpy() ./.libs/libguile-2.0.a(libguile_2.0_la-bytevectors.o)(.text+0x1982): In function `scm_utf32_to_string': /usr/obj/micro/guile-1.9.12/libguile/bytevectors.c:1888: warning: strcat() is almost always misused, please use strlcat() ./.libs/libguile-2.0.a(libguile_2.0_la-srfi-14.o)(.text+0x463): In function `scm_sys_char_set_dump': /usr/obj/micro/guile-1.9.12/libguile/srfi-14.c:2047: warning: sprintf() is often misused, please use snprintf() GEN c-tokenize.o GEN guile_filter_doc_snarfage 2nd paragraph: *** libtool will only create a static version of it. What 'it' is being referred to? The above message appears to be generated by: ./build-aux/ltmain.sh Reading through that now. -- -primus "If I had more time, I would have written you a shorter letter" - Pascal "It isn't what you make, it's what you don't lose!" ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-10 15:44 ` primus @ 2010-09-10 21:37 ` Ludovic Courtès 0 siblings, 0 replies; 20+ messages in thread From: Ludovic Courtès @ 2010-09-10 21:37 UTC (permalink / raw) To: bug-guile Hi, primus <rprimus@gmail.com> writes: > CCLD libguile-2.0.la > > *** Warning: linker path does not have real file for library -lm. [...] > *** libtool will only create a static version of it. Can you try the following: cd libguile rm -f libguile*.la .libs/libguile*.a .libs/libguile*.so* make V=1 CC="--debug gcc" libguile-2.0.la 2>&1 | tee log and then post ‘log’? Thanks, Ludo’. ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] [SOLUTION] run time failure ... 2010-09-10 14:35 ` Andy Wingo 2010-09-10 15:44 ` primus @ 2010-09-10 16:44 ` primus 1 sibling, 0 replies; 20+ messages in thread From: primus @ 2010-09-10 16:44 UTC (permalink / raw) To: bug-guile Fri Sep 10 17:40:26 BST 2010 Solution found: need to also pass "-L/usr/lib" to configure: env CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib -L/usr/lib" ./configure So far has progress to: GUILE_AUTO_COMPILE=0 \ ../meta/uninstalled-env \ guile-tools compile -Wunbound-variable -Warity-mismatch -o "ice-9/psyntax-pp.go" "./ice-9/psyntax.scm" with processor pegged: PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND 21419 root 64 0 848K 30M run - 17:14 97.51% guile Have a good weekend. -- -primus "If I had more time, I would have written you a shorter letter" - Pascal "It isn't what you make, it's what you don't lose!" ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-10 8:39 ` Andy Wingo 2010-09-10 13:47 ` primus @ 2010-09-10 21:29 ` Ludovic Courtès 2010-09-12 11:32 ` Andy Wingo 1 sibling, 1 reply; 20+ messages in thread From: Ludovic Courtès @ 2010-09-10 21:29 UTC (permalink / raw) To: bug-guile Hi! Andy Wingo <wingo@pobox.com> writes: > Now we need to figure out what's going on > with --disable-shared builds. It’s not supported: http://www.mail-archive.com/guile-devel@gnu.org/msg02985.html But it may become suddenly supported once SRFI-1 is in Scheme. :-) Thanks, Ludo’. ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-10 21:29 ` [1.9.12][OpenBSD] " Ludovic Courtès @ 2010-09-12 11:32 ` Andy Wingo 2010-09-12 17:41 ` Ludovic Courtès 0 siblings, 1 reply; 20+ messages in thread From: Andy Wingo @ 2010-09-12 11:32 UTC (permalink / raw) To: Ludovic Courtès; +Cc: bug-guile Hi, On Fri 10 Sep 2010 23:29, ludo@gnu.org (Ludovic Courtès) writes: > Andy Wingo <wingo@pobox.com> writes: > >> Now we need to figure out what's going on >> with --disable-shared builds. > > It’s not supported: > > http://www.mail-archive.com/guile-devel@gnu.org/msg02985.html > > But it may become suddenly supported once SRFI-1 is in Scheme. :-) This is a bit ridiculous. Let's just pull all that srfi C code into the core. They are all no-ops except for srfi-60. The bindings should remain invisible to the default Scheme environment. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-12 11:32 ` Andy Wingo @ 2010-09-12 17:41 ` Ludovic Courtès 2010-09-12 20:26 ` Andy Wingo 0 siblings, 1 reply; 20+ messages in thread From: Ludovic Courtès @ 2010-09-12 17:41 UTC (permalink / raw) To: Andy Wingo; +Cc: bug-guile Hi, Andy Wingo <wingo@pobox.com> writes: > On Fri 10 Sep 2010 23:29, ludo@gnu.org (Ludovic Courtès) writes: > >> Andy Wingo <wingo@pobox.com> writes: >> >>> Now we need to figure out what's going on >>> with --disable-shared builds. >> >> It’s not supported: >> >> http://www.mail-archive.com/guile-devel@gnu.org/msg02985.html >> >> But it may become suddenly supported once SRFI-1 is in Scheme. :-) > > This is a bit ridiculous. Let's just pull all that srfi C code into the > core. Yes, but some projects might link directly against libguile-srfi-srfi*, so we may need to keep them around (that was my thinking for SRFI-1.) Thanks, Ludo’. ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-12 17:41 ` Ludovic Courtès @ 2010-09-12 20:26 ` Andy Wingo 2010-09-12 20:38 ` Ludovic Courtès 0 siblings, 1 reply; 20+ messages in thread From: Andy Wingo @ 2010-09-12 20:26 UTC (permalink / raw) To: Ludovic Courtès; +Cc: bug-guile Heya, On Sun 12 Sep 2010 19:41, ludo@gnu.org (Ludovic Courtès) writes: >> This is a bit ridiculous. Let's just pull all that srfi C code into the >> core. > > Yes, but some projects might link directly against libguile-srfi-srfi*, > so we may need to keep them around (that was my thinking for SRFI-1.) You know what, I don't think we do. Currently to link to e.g. srfi-1, one needs to do a `-lguile-srfi-srfi-1-v-4'. guile-config doesn't provide this information, especially the "-v-4", and it isn't encoded anywhere within Guile as far as I can tell, and certainly not in the manual. I can't pull up any uses on any of the code search sites. So that means no one is using it. We may safely remove those libs, and those header files. I'm not usually so rash regarding removing interfaces, but I would be surprised if this affected anyone at all. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-12 20:26 ` Andy Wingo @ 2010-09-12 20:38 ` Ludovic Courtès 2010-09-12 21:41 ` Andy Wingo 0 siblings, 1 reply; 20+ messages in thread From: Ludovic Courtès @ 2010-09-12 20:38 UTC (permalink / raw) To: Andy Wingo; +Cc: bug-guile Hi, Andy Wingo <wingo@pobox.com> writes: > On Sun 12 Sep 2010 19:41, ludo@gnu.org (Ludovic Courtès) writes: > >>> This is a bit ridiculous. Let's just pull all that srfi C code into the >>> core. >> >> Yes, but some projects might link directly against libguile-srfi-srfi*, >> so we may need to keep them around (that was my thinking for SRFI-1.) > > You know what, I don't think we do. Currently to link to e.g. srfi-1, > one needs to do a `-lguile-srfi-srfi-1-v-4'. guile-config doesn't > provide this information, especially the "-v-4", and it isn't encoded > anywhere within Guile as far as I can tell, and certainly not in the > manual. I can't pull up any uses on any of the code search sites. Well yeah, you may be right. It’s always an issue with those semi-private APIs. > So that means no one is using it. We may safely remove those libs, and > those header files. > > I'm not usually so rash regarding removing interfaces, but I would be > surprised if this affected anyone at all. OK, let’s do it this way. I may keep the C proxies to the Scheme SRFI-1 until the conversion is over, though, and remove them afterward. Thanks, Ludo’. ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] run time failure ... 2010-09-12 20:38 ` Ludovic Courtès @ 2010-09-12 21:41 ` Andy Wingo 0 siblings, 0 replies; 20+ messages in thread From: Andy Wingo @ 2010-09-12 21:41 UTC (permalink / raw) To: Ludovic Courtès; +Cc: bug-guile Hi, On Sun 12 Sep 2010 22:38, ludo@gnu.org (Ludovic Courtès) writes: >> We may safely remove [SRFI C code] > > OK, let’s do it this way. Excellent. Pushed! Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] CFLAGS="-g -O0" run time failure ... 2010-09-08 19:46 ` Andy Wingo 2010-09-08 20:07 ` primus 2010-09-08 22:12 ` primus @ 2010-09-08 23:06 ` primus 2010-09-10 8:41 ` Andy Wingo 2 siblings, 1 reply; 20+ messages in thread From: primus @ 2010-09-08 23:06 UTC (permalink / raw) To: bug-guile [-- Attachment #1: Type: text/plain, Size: 1160 bytes --] On Wed, Sep 08, 2010 at 09:46:41PM +0200, Andy Wingo wrote: > Hi, > > On Wed 08 Sep 2010 21:21, primus <rprimus@gmail.com> writes: > > > Failure is at: (won't know where to start debugging this - scheme land now). > > > > gmake[2]: Entering directory `/usr/obj/micro/guile-1.9.12/module' > > GUILEC ice-9/eval.go > > guile: uncaught throw to wrong-type-arg: (#f Wrong type (expecting ~A): ~S (exact integer (#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>)) ((#t #<catch-closure 3d9da8e0> #<catch-closure 3d9da8d0> #<catch-closure 3d9da8c0>))) > > Ew. What version of libgc do you have? > > If you are able to attach to the guile process while it is building, > break on scm_ithrow and send the backtrace. You can edit > meta/guile-tools and replace "exec guile" with "exec > gdb-uninstalled-guile", then when you get a gdb prompt after typing > "make", you can "break scm_ithrow", then "run", then "bt full" when you > hit the error. Thu Sep 9 00:03:18 BST 2010 Attached is build logfile that contains the backtrace when compiled with CFLGAS="-g -O0". -- -primus "It isn't what you make, it's what you don't lose!" [-- Attachment #2: guile-1.9.12_gmake_all.l7g_gdb.bz2 --] [-- Type: application/octet-stream, Size: 10139 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] CFLAGS="-g -O0" run time failure ... 2010-09-08 23:06 ` [1.9.12][OpenBSD] CFLAGS="-g -O0" " primus @ 2010-09-10 8:41 ` Andy Wingo 2010-09-10 13:53 ` primus 0 siblings, 1 reply; 20+ messages in thread From: Andy Wingo @ 2010-09-10 8:41 UTC (permalink / raw) To: primus; +Cc: bug-guile On Thu 09 Sep 2010 01:06, primus <rprimus@gmail.com> writes: >> If you are able to attach to the guile process while it is building, >> break on scm_ithrow and send the backtrace. You can edit >> meta/guile-tools and replace "exec guile" with "exec >> gdb-uninstalled-guile", then when you get a gdb prompt after typing >> "make", you can "break scm_ithrow", then "run", then "bt full" when you >> hit the error. Can you also try "call scm_backtrace ()", please. That will give the Scheme backtrace, if all goes well. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [1.9.12][OpenBSD] CFLAGS="-g -O0" run time failure ... 2010-09-10 8:41 ` Andy Wingo @ 2010-09-10 13:53 ` primus 0 siblings, 0 replies; 20+ messages in thread From: primus @ 2010-09-10 13:53 UTC (permalink / raw) To: bug-guile [-- Attachment #1: Type: text/plain, Size: 1031 bytes --] On Fri, Sep 10, 2010 at 10:41:08AM +0200, Andy Wingo wrote: > On Thu 09 Sep 2010 01:06, primus <rprimus@gmail.com> writes: > > >> If you are able to attach to the guile process while it is building, > >> break on scm_ithrow and send the backtrace. You can edit > >> meta/guile-tools and replace "exec guile" with "exec > >> gdb-uninstalled-guile", then when you get a gdb prompt after typing > >> "make", you can "break scm_ithrow", then "run", then "bt full" when you > >> hit the error. > > Can you also try "call scm_backtrace ()", please. That will give the > Scheme backtrace, if all goes well. Fri Sep 10 14:51:11 BST 2010 attached is guile-1.9.12_gmake_all.l8g_gdb.bz2 relevant info from call: (gdb) call scm_backtrace () Breakpoint 1, scm_ithrow (key=0x3c0788d0, args=0x3d11b3c0, noreturn=1) at throw.c:453 453 } Doesn't look like this is what you may have been expecting. -- -primus "If I had more time, I would have written you a shorter letter" - Pascal "It isn't what you make, it's what you don't lose!" [-- Attachment #2: guile-1.9.12_gmake_all.l8g_gdb.bz2 --] [-- Type: application/octet-stream, Size: 1185 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2010-09-12 21:41 UTC | newest] Thread overview: 20+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-09-08 19:21 [1.9.12][OpenBSD] run time failure primus 2010-09-08 19:46 ` Andy Wingo 2010-09-08 20:07 ` primus 2010-09-08 21:58 ` Ludovic Courtès 2010-09-08 22:12 ` primus 2010-09-10 8:39 ` Andy Wingo 2010-09-10 13:47 ` primus 2010-09-10 14:35 ` Andy Wingo 2010-09-10 15:44 ` primus 2010-09-10 21:37 ` Ludovic Courtès 2010-09-10 16:44 ` [1.9.12][OpenBSD] [SOLUTION] " primus 2010-09-10 21:29 ` [1.9.12][OpenBSD] " Ludovic Courtès 2010-09-12 11:32 ` Andy Wingo 2010-09-12 17:41 ` Ludovic Courtès 2010-09-12 20:26 ` Andy Wingo 2010-09-12 20:38 ` Ludovic Courtès 2010-09-12 21:41 ` Andy Wingo 2010-09-08 23:06 ` [1.9.12][OpenBSD] CFLAGS="-g -O0" " primus 2010-09-10 8:41 ` Andy Wingo 2010-09-10 13:53 ` primus
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).