[Bug 197189] lang/guile2 failure during build of finance/gnucash on FreeBSD 8.4 i386
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri Jan 30 00:08:33 UTC 2015
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197189
Bug ID: 197189
Summary: lang/guile2 failure during build of finance/gnucash on
FreeBSD 8.4 i386
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: freebsd-ports-bugs at FreeBSD.org
Reporter: truckman at FreeBSD.org
CC: bofh at freebsd.org, gnome at FreeBSD.org
CC: bofh at freebsd.org, gnome at FreeBSD.org
Created attachment 152360
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=152360&action=edit
script to run guild compile under truss
The finance/gnucash port defaults to using lang/guile, but that conflicts with
one of the other ports that I use, which requires lang/guile2. To avoid the
conflict, I'm attempting to build gnucash with the GUILE2 option. This appears
to work on FreeBSD 10.1 amd64, but fails on FreeBSD 8.4 i386.
When building gnucash "guild compile" is executed a number of times, apparently
successfully most of the time, even on FreeBSD 8.4, but it always fails on the
same file on FreeBSD 8.4:
GNC_UNINSTALLED=yes \
GNC_BUILDDIR=../../.. \
GNC_MODULE_PATH="../../../src/app-utils/.libs:../../../src/engine/.libs:${GNC_MODULE_PATH}"
GUILE_LOAD_PATH="../../../src/app-utils:../../../src/core-utils:../../../src/engine:../../../src/gnc-module:../../../src/gnome-utils:../../../src/scm:${GUILE_LOAD_PATH}"
GUILE_LOAD_COMPILED_PATH="../../../src/app-utils:../../../src/core-utils:../../../src/engine:../../../src/gnc-module:../../../src/gnome-utils:../../../src/scm:${GUILE_LOAD_COMPILED_PATH}"
LD_LIBRARY_PATH="../../../src/report/report-gnome/.libs:../../../src/report/report-system/.libs:../../../src/html/.libs:../../../src/backend/sql/.libs:../../../src/backend/xml/.libs:../../../src/gnome-utils/.libs:../../../src/gnc-module/.libs:../../../src/core-utils/.libs:../../../src/app-utils/.libs:../../../src/libqof/qof/.libs:../../../src/engine/.libs:${LD_LIBRARY_PATH}"
DYLD_LIBRARY_PATH="../../../src/report/report-gnome/.libs:../../../src/report/report-system/.libs:../../../src/html/.libs:../../../src/backend/sql/.libs:../../../src/backend/xml/.libs:../../../src/gnome-utils/.libs:../../../src/gnc-module/.libs:../../../src/core-utils/.libs:../../../src/app-utils/.libs:../../../src/libqof/qof/.libs:../../../src/engine/.libs:${DYLD_LIBRARY_PATH}"
\
/usr/local/bin/guild compile -o report-gnome.go report-gnome.scm
* 09:03:34 WARN <qof.engine> [guid_init()] only got 5814 bytes.
The identifiers might not be very random.
Backtrace:
In /usr/local/bin/guild:
74: 19 [main ("/usr/local/bin/guild" "compile" "-o" ...)]
In srfi/srfi-1.scm:
619: 18 [for-each #<procedure 8455880 at scripts/compile.scm:179:14 (file)> #]
In scripts/compile.scm:
182: 17 [#<procedure 8455880 at scripts/compile.scm:179:14 (file)>
"report-gnome.scm"]
In system/base/target.scm:
59: 16 [with-target "i386-portbld-freebsd8.4" ...]
In system/base/compile.scm:
150: 15 [compile-file "report-gnome.scm" #:output-file ...]
43: 14 [call-once #<procedure 84551a0 at system/base/compile.scm:56:5 ()>]
In ice-9/boot-9.scm:
171: 13 [with-throw-handler #t ...]
In system/base/compile.scm:
59: 12 [#<procedure 8455180 at system/base/compile.scm:58:9 ()>]
153: 11 [#<procedure 84551c0 at system/base/compile.scm:151:8 (port)>
#<closed: file 0>]
216: 10 [read-and-compile #<input: report-gnome.scm 7> #:from ...]
232: 9 [lp (# # # # ...) #<directory # 85d99d8> #<directory # 85d99d8>]
180: 8 [lp (#<procedure compile-tree-il (x e opts)>) (cond-expand # #) ...]
In ice-9/boot-9.scm:
2401: 7 [save-module-excursion #<procedure 88d5b40 at
language/scheme/compile-tree-il.scm:29:3 ()>]
In language/scheme/compile-tree-il.scm:
31: 6 [#<procedure 88d5b40 at language/scheme/compile-tree-il.scm:29:3 ()>]
In ice-9/psyntax.scm:
1106: 5 [expand-top-sequence ((cond-expand (guile-2 #) (else))) () ...]
989: 4 [scan ((cond-expand (guile-2 #) (else))) () ...]
989: 3 [scan (#(syntax-object (eval-when # # ...) (#) ...)) () ...]
279: 2 [scan (#) () (#) ...]
In unknown file:
?: 1 [load-extension "libgncmod-report-gnome"
"scm_init_sw_report_gnome_module"]
In ice-9/boot-9.scm:
106: 0 [#<procedure 8455160 at ice-9/boot-9.scm:97:6 (thrown-k . args)>
misc-error ...]
ice-9/boot-9.scm:106:20: In procedure #<procedure 8455160 at
ice-9/boot-9.scm:97:6 (thrown-k . args)>:
ice-9/boot-9.scm:106:20: In procedure dynamic-link: file:
"libgncmod-report-gnome", message: "file not found"
Makefile:1144: recipe for target 'report-gnome.go' failed
gmake[5]: *** [report-gnome.go] Error 1
A search of the work directory shows that libgncmod-report-gnome.so is present.
If use truss to run guild, it shows that guild is successfully accessing
libgncmod-report-gnome.so from the work directory several times, but later on
tries to access it under /usr/local/lib/guile/2.0/extensions/, which fails.
I stated earlier that it "appears" to work correctly on FreeBSD 10, but when
run under truss I see a large number of open() syscalls that have either empty
strings as their path argument, or binary garbage, which suggests that there
may be an internal memory corruption problem.
I have attached a compile script that sets up the environment properly and then
runs guild under truss. Since this was tested in a poudriere jail, it may be
necessary to change the path to the gnucash work directory.
--- Comment #1 from Bugzilla Automation <bugzilla at FreeBSD.org> ---
Maintainers CC'd
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the freebsd-gnome
mailing list