Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 206896 - app-office/gnucash-2.2.3 fails to configure after guile/slib/etc. etc. upgrade
Summary: app-office/gnucash-2.2.3 fails to configure after guile/slib/etc. etc. upgrade
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High minor (vote)
Assignee: Scheme Project
URL:
Whiteboard:
Keywords:
: 210893 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-01-21 17:50 UTC by Brandon Low
Modified: 2008-03-06 07:35 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
config.log, as requested in emerge output (config.log,79.69 KB, text/plain)
2008-01-22 13:56 UTC, Neil Bothwick
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Brandon Low 2008-01-21 17:50:22 UTC
I might be able to get more specific later, but for now I can just tell you that I got an sandbox violation during configure on gnucash-2.2.3 and even disabling usersandbox and sandbox did not allow the build to function, so I disabled userpriv as well.  It is now merging successfully.  The file access error is in attempting to access /usr/share/guile/site/slibcat which it is trying to unlink, but this may or may not be the sum of the error.  The error reported by configure with FEATURES="userpriv -usersandbox sandbox" is that it cannot find SLIB (with mention of checking out two gnucash bugs, which are not helpful).

Reproducible: Always

Steps to Reproduce:
1. Enable userpriv usersandbox and sandbox
2. Emerge gnucash-2.2.3

Actual Results:  
Fails to configure

Expected Results:  
Successful merge
Comment 1 Brandon Low 2008-01-21 18:02:33 UTC
It works with +sandbox +usersandbox -userpriv.
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2008-01-21 18:05:00 UTC
Post some errors and emerge --info output; thanks.
Comment 3 Brandon Low 2008-01-21 18:07:57 UTC
Portage 2.1.4 (default-linux/x86/2006.1, gcc-4.2.2, glibc-2.7-r1, 2.6.23.12 i686)
=================================================================
System uname: 2.6.23.12 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
Timestamp of tree: Mon, 21 Jan 2008 17:00:07 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.5.1-r5
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon64 -mfpmath=sse -msse3 -O2 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/bind"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=athlon64 -mfpmath=sse -msse3 -O2 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="buildpkg ccache confcache distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.llarian.net/ http://gentoo.mirrors.tera-byte.com/ http://gentoo.osuosl.org/"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowex 3dnowext X aac acpi aim alsa aotuv apache2 audiofile avi bcmath berkdb bitmap-fonts bzip2 bzlib calendar cdparanoia cdr console crypt cups curl dba dbus dedicated dga dlloader dri dv dvd dvdread encode escreen examples exif fbcon ffmpeg flac flash fltk font-server gcj gd gdbm ggi gif glut gphoto2 gpm gtk gtk2 hbci icq imagemagick imap imlib inetd innodb ithreads java javadoc javamail jbig jikes jpeg lcms libcaca libg++ libwww lm_sensors mad madwifi maildir midi mjpeg mmx mmxext mng mozdevelop mozilla mp3 mpeg msn mysql ncurses network nls nptl nptlonly nsplugin offensive ofx ogg oggvorbis opengl oscar pam pcre pdf perl php pic pie plotutils png pnp python qt3 qt3support qt4 quicktime quotes readline rtc session slang smp sockets spell sse sse2 ssl svg tcltk threads tiff truetype truetype-fonts type1-fonts unicode usb visualization vncviewer vorbis wifi win32codecs x86 xforms xine xml xml2 xorg xscreensaver xvnc yahoo" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1      emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m       maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="*" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="radeon vga"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 4 Brandon Low 2008-01-21 18:11:23 UTC
More backstory:
Gnucash stopped starting up after the upgrade from slib-3.1.4 to 3.1.5.  The error was that it could not find /usr/share/slib/mklibcat.  I figured remerging gnucash would probably solve the problem.  Couldn't remerge due to the above mentioned errors.

I do not have actual error logs to paste as I've been actively trying to solve this issue on my system.

Also please disregard my comment about it working with +sandbox +usersandbox -userpriv -- it works with all three enabled now that it's worked once.

I'm trying to reproduce by remerging slib-3.1.5 and guile-1.8.3 before re-attempting gnucash in order to provide error messages.
Comment 5 Brandon Low 2008-01-21 18:17:02 UTC
UGH, now that I've forced it to work, I cannot reproduce it.  I should have recorded more information before getting it to work myself.

I don't know how many people use ~x86 and userpriv, and gnucash, but I'm fairly certain that any of them will also experience this problem.

For those that may find this bug report: disabling userpriv, sandbox and usersandbox will allow you to remerge gnucash and get back to normal.
Comment 6 Neil Bothwick 2008-01-22 13:54:49 UTC
I get the same on amd64, with slib-3.1.5 and slib-3.1.5-r1. Here is the emerge output

checking for guile libraries... -pthread -lguile -lltdl -L/usr/lib64 -lgmp -lcrypt -lm -lltdl
checking for guile headers...  -pthread
checking whether guile works... yes
checking for guile... /usr/bin/guile
checking for guile - 1.6.0 <= version < 99.99.99... yes: 1.8.3
checking for guile - 1.8.0 <= version < 99.99.99... yes: 1.8.3
checking for SLIB support... configure: error:

   Cannot find SLIB.  Are you sure you have it installed?
   See http://bugzilla.gnome.org/show_bug.cgi?id=347922
   and http://bugzilla.gnome.org/show_bug.cgi?id=483631



!!! Please attach the following file when seeking support:
!!! /mnt/scratch/portage/app-office/gnucash-2.2.3/work/gnucash-2.2.3/config.log
 *
 * ERROR: app-office/gnucash-2.2.3 failed.
 * Call stack:
 *               ebuild.sh, line   46:  Called src_compile
 *             environment, line 2755:  Called econf 'src_compile' 'src_compile' '--disable-debug' '--disable-ofx' '--disable-hbci' '--disable-doxygen'
 *               ebuild.sh, line  509:  Called die
 * The specific snippet of code:
 *                      die "econf failed"
 *  The die message:
 *   econf failed
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/app-office:gnucash-2.2.3:20080122-092039.log'.
 * The ebuild environment file is located at '/mnt/scratch/portage/app-office/gnucash-2.2.3/temp/environment'.
 *
--------------------------- ACCESS VIOLATION SUMMARY ---------------------------
LOG FILE = "/var/log/sandbox/sandbox-4482.log"

open_wr:   /usr/share/guile/site/slibcat
--------------------------------------------------------------------------------

And here is emerge --info

Portage 2.1.4 (default-linux/amd64/2007.0/desktop, gcc-4.2.2, glibc-2.7-r1, 2.6.23-tuxonice-r6 x86_64)
=================================================================
System uname: 2.6.23-tuxonice-r6 x86_64 Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz
Timestamp of tree: Tue, 22 Jan 2008 06:16:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.5.1-r5
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe -msse3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/4.0/env /usr/kde/4.0/share/config /usr/kde/4.0/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=nocona -O2 -pipe -msse3"
DISTDIR="/mnt/portage/distfiles"
EMERGE_DEFAULT_OPTS="--alphabetical"
FEATURES="buildpkg ccache distcc distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://gentoo.digimed.co.uk/ ftp://ftp.heanet.ie/pub/gentoo/ ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ ftp://ftp.easynet.nl/mirror/gentoo/"
LANG="en_GB"
LINGUAS="en_GB"
MAKEOPTS="-j5"
PKGDIR="/mnt/portage/packages/loonquawl"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/mnt/scratch"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/mnt/portage/layman/sunrise /mnt/portage/local"
SYNC="rsync://desiato/gentoo"
USE="X aac acl acpi alsa amd64 berkdb bitmap-fonts bluetooth bzip2 cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread emboss encode evo exif fam firefox flac foomaticdb gdbm gif gimp gimpprint gphoto2 gpm gtk hal htmlhandbook iconv id3 imap isdnlog jpeg kde kdeenablefinal kdehiddenvisibility lm_sensors logrotate mad midi mikmod mmx mp3 mpeg mudflap ncurses networkmanager nptl nptlonly nsplugin ntfs offensive ogg opengl openmp oss pcre pdf png pppd python qt3 qt3support qt4 quicktime readline reflection reiserfs sdl session slp spell spl sse sse2 ssl svg tcpd threads tiff truetype truetype-fonts type1-fonts unicode usb v4l v4l2 vorbis wifi xml xorg xv zlib zsh-completion" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_GB" USERLAND="GNU" VIDEO_CARDS="vesa i810"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Comment 7 Neil Bothwick 2008-01-22 13:56:03 UTC
Created attachment 141576 [details]
config.log, as requested in emerge output
Comment 8 Neil Bothwick 2008-01-22 14:06:17 UTC
FEATURES="-sandbox -usersandbox -userpriv" makes no difference, the error is the same here.
Comment 9 Jakub Moc (RETIRED) gentoo-dev 2008-01-22 14:06:31 UTC
Dupe...
Comment 10 Jakub Moc (RETIRED) gentoo-dev 2008-01-22 14:06:50 UTC

*** This bug has been marked as a duplicate of bug 196639 ***
Comment 11 Marijn Schouten (RETIRED) gentoo-dev 2008-01-22 15:35:59 UTC
slib-3.1.5 didn't work with guile, but that should be fixed with slib-3.1.5-r1
Comment 12 Neil Bothwick 2008-01-22 15:50:15 UTC
As mentioned in Comment 6, it fails with -r1 too.
Comment 13 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 10:40:57 UTC
reopening for Neil
Comment 14 Torsten Veller (RETIRED) gentoo-dev 2008-01-23 11:06:48 UTC
guile-1.8.3-r1 and slib-3.1.5-r1:

 * Registering slib with guile...
ERROR: In procedure open-file:
ERROR: No such file or directory: "/usr/share/slib/mklibcat"

Still a problem with latest slib, so back to scheme@ 
Comment 15 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 11:26:08 UTC
Alright. If there is an issue here, it seems to be related to proper registration of slib with guile. For this purpose slib-3.1.5-r1 should have created a file /usr/share/guile/site/slibcat. The way slib-3.1.5 did this stopped working after slib-3.1.4.

So, please confirm you are using 3.1.5-r1, give "locate slibcat" output, confirm gnucash doesn't configure, do "locate slibcat | xargs rm", (after this I could ''reproduce'') re-emerge slib-3.1.5-r1 give "locate slibcat" output again and then try emerging gnucash again. gnucash-2.2.3 emerges and runs fine here.
Comment 16 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 11:31:04 UTC
Tove, hmm.
Can you please open a fresh bug for that? This bug is too cluttered with gnucash stuff.
Comment 17 Torsten Veller (RETIRED) gentoo-dev 2008-01-23 12:03:56 UTC
I had to link mklibcat to mklibcat.scm and also to create /usr/share/guile/site/ before install_slib_for_guile succeeded. Now it gnucash compiles and works.
(dev-schem/guile-1.8.3-r1 and dev-scheme/slib-3.1.5-r1)

So once again:
| ERROR: In procedure open-file:
| ERROR: No such file or directory: "/usr/share/slib/mklibcat"

ln -s mklibcat.scm /usr/share/slib/mklibcat


| ERROR: In procedure open-file:
| ERROR: No such file or directory: "/usr/share/guile/site/slibcat"

mkdir usr/share/guile/site/


install_slib_for_guile ; emerge gnucash
Comment 18 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 12:35:32 UTC
very strange. I have

$ ls usr/share/guile/site/ /usr/share/slib/mklibcat
ls: cannot access usr/share/guile/site/: No such file or directory
ls: cannot access /usr/share/slib/mklibcat: No such file or directory

and it works. Can you "cat install_slib_for_guile" please?
Comment 19 Torsten Veller (RETIRED) gentoo-dev 2008-01-23 12:44:17 UTC
(In reply to comment #18)
> Can you "cat install_slib_for_guile" please?

guile -c "(use-modules (ice-9 slib)) (require 'new-catalog) (slib:report-version)"

Comment 20 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 13:45:40 UTC
yeah, that looks fine. Not sure what's going on.
Comment 21 Torsten Veller (RETIRED) gentoo-dev 2008-01-23 14:48:46 UTC
(In reply to comment #17)
> ln -s mklibcat.scm /usr/share/slib/mklibcat

This is *not* needed. It still works after i've removed the link. But:
/usr/share/guile/site/ must be present!

So do `mkdir /usr/share/guile/site/` before `install_slib_for_guile`.

Marijn, there was a missing slash in my last comment. I guess you have the site/ directory. Can you check where it comes from (like `qfile /usr/share/guile/site`)?

Neil, Brandon, does this solve you problem too?
Comment 22 Neil Bothwick 2008-01-23 15:12:13 UTC
It works for me. Many thanks!
Comment 23 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 15:21:33 UTC
Torsten, right, sorry about not noticing, indeed I have /usr/share/guile/site. 

$ equery b  /usr/share/guile/site/
[ Searching for file(s) /usr/share/guile/site in *... ]
dev-libs/g-wrap-1.9.9 (/usr/share/guile/site)
dev-scheme/guile-cairo-1.4.0 (/usr/share/guile/site)
dev-scheme/guile-lib-0.1.3 (/usr/share/guile/site)

So I guess we need a dodir for slib...
Comment 24 Marijn Schouten (RETIRED) gentoo-dev 2008-01-23 16:51:30 UTC
Instead I have made guile create that directory since 1.8.3-r2.
Changing guile versions should also no longer break slib registration for guile versions since 1.8.3-r2.

Thanks for your help folks :)
Comment 25 Jakub Moc (RETIRED) gentoo-dev 2008-02-21 12:17:29 UTC
*** Bug 210893 has been marked as a duplicate of this bug. ***
Comment 26 Jakub Moc (RETIRED) gentoo-dev 2008-02-21 12:20:25 UTC
This damn thing keeps breaking after any upgrade of anything, reopen. Also if bug 196639 is not supposed to be used for anything useful it should be closed to prevent even more mess with this stuff.

Comment 27 Jakub Moc (RETIRED) gentoo-dev 2008-02-21 12:35:01 UTC
dev-scheme/guile-1.8.4:

<snip>
pkg_postinst() {
        [ "${ROOT}" == "/" ] && pkg_config
}

pkg_config() {
        if has_version dev-scheme/slib; then
                einfo "Registering slib with guile"
                install_slib_for_guile
        fi
}

pkg_prerm() {
        rm -f "${ROOT}"/usr/share/guile/site/slibcat
}
</snip>

Well, this totally cannot work on any upgrade/downgrade:

pkg_postinst() called, registers slib -> pkg_prerm() called, which wipes the registration which you've just done -> congrats, once again broken.

This *only* works as excepted on reinstall of the exact same ${PVR} where pkg_postinst() is called *after* pkg_prerm().