After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 347922 - configure doesn't test for slib: make fails on require.scm
configure doesn't test for slib: make fails on require.scm
Status: VERIFIED FIXED
Product: GnuCash
Classification: Other
Component: Build system
2.0.x
Other Linux
: Normal normal
: ---
Assigned To: Derek Atkins
Derek Atkins
Depends on:
Blocks: 347575
 
 
Reported: 2006-07-18 14:49 UTC by Derek Atkins
Modified: 2018-06-29 21:10 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Derek Atkins 2006-07-18 14:49:12 UTC
(cd .libs && rm -f libgncmod-test.la && ln -s ../libgncmod-test.la
libgncmod-test.la)
make[3]: Leaving directory `/data/downloads/gnucash-2.0.0/src/test-core'
Making all in engine
make[3]: Entering directory `/data/downloads/gnucash-2.0.0/src/engine'
chmod u+x ./iso-currencies-to-c
GUILE_LOAD_PATH=: srcdir=. ./iso-currencies-to-c
ERROR: Could not find slib/require.scm in  ("" ""
"/usr/local/share/guile/site" "/usr/local/share/guile/1.8"
"/usr/local/share/guile")
make[3]: *** [iso-4217-currencies.c] Error 1
make[3]: Leaving directory `/data/downloads/gnucash-2.0.0/src/engine'
make[2]: *** [all-recursive] Error 1
Comment 1 Derek Atkins 2006-07-22 15:40:16 UTC
We can test this similar to other tests:

[warlord@cliodev src]$ guile -c "(use-modules (ice-9 slib)) (require 'format)"
ERROR: slib:require unsupported feature format
[warlord@cliodev src]$ echo $status
2
[warlord@cliodev src]$ guile -c "(use-modules (ice-9 slib)) (require 'printf)"
[warlord@cliodev src]$ echo $status
0

(format is only in older versions, but we always require printf -- so we can/should test for that)
Comment 2 Derek Atkins 2006-07-22 15:48:26 UTC
Fixed in trunk in r14551.  Waiting for audit to backport to 2.0.
Comment 3 Derek Atkins 2006-07-26 02:40:13 UTC
Audited by jsled.  Merged into 2.0 as r14563 for 2.0.1
Comment 4 Christian Stimming 2006-08-04 11:40:51 UTC
For the record: Slib can be obtained from http://swissnet.ai.mit.edu/~jaffer/SLIB.html
Comment 5 Derek Atkins 2006-08-04 12:54:24 UTC
Perhaps that info should go into the README?
Comment 6 Steve Kelem 2006-08-18 06:07:57 UTC
I downloaded slib from the above location, unzipped it into /usr/share/slib,
ran "make install" from that directory.

When I try to build gnucash, it complains:
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

What else am I supposed to do to configure gnucash?
I grepped for "slib" in the gnucash directory and found an otherwise undocumented option to configure: --with-slibdir=/lib
I tried changing my configure command to include --with-slibdir=/usr/share/slib
but I still get the same error message.
Comment 7 Derek Atkins 2006-08-18 15:48:19 UTC
Steve:  I bet you a dollar to a dime that /usr/share/slib isn't in the default guile load path, and that you didn't add a symlink from /usr/share/guile/slib -> /usr/share/slib

Create that symlink and try again.  You can test slib by hand by running:

  guile -c "(use-modules (ice-9 slib)) (require 'printf)"
Comment 8 Steve Kelem 2006-08-21 05:06:11 UTC
% which guile
/usr/bin/guile
% guile --version
Guile 1.8.0
Copyright (c) 1995, 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
Guile may be distributed under the terms of the GNU General Public Licence;
certain other uses are permitted as well.  For details, see the file
`COPYING', which is included in the Guile distribution.
There is no warranty, to the extent permitted by law.
% guile -c "(use-modules (ice-9 slib)) (require 'printf)"
ERROR: Unbound variable: with-load-pathname
% ls -l /usr/share/guile
total 0
drwxr-xr-x  6 root root 232 2006-08-17 22:02 1.6/
lrwxrwxrwx  1 root root   3 2005-11-16 06:16 1.6.7 -> 1.6/
drwxr-xr-x  7 root root 208 2006-07-21 09:38 1.8/
drwxr-xr-x  3 root root  72 2006-08-17 22:41 site/
lrwxrwxrwx  1 root root  15 2006-08-20 21:25 slib -> /usr/share/slib/
%

If I add the line to /usr/share/guile/1.8/ice-9/slib.scm:
(load (string-append (assoc-ref %guile-build-info 'pkgdatadir)
            "/slib/guile.init"))

(define-module (ice-9 slib)

Then I get:
% guile -c "(use-modules (ice-9 slib)) (require 'printf)"
%
But I still the the error:
...
checking for SLIB support... configure: error:

   Cannot find SLIB.  Are you sure you have it installed?
%  guile -c '(display %load-path)'
(/usr/share/guile/site /usr/share/guile/1.8 /usr/share/guile)
Comment 9 Derek Atkins 2006-08-21 17:55:12 UTC
Anything printed in config.log?

When you run guile by hand, what's the return value?  I.e., what do you get from:

% guile -c "(use-modules (ice-9 slib)) (require 'printf)"
% echo $?

(at least I'm assuming this is bash.  for tcsh it would be $status)

Also, what version of SLIB do you have installed?  I'll also point out that most distributions already include SLIB...
Comment 10 Steve Kelem 2006-08-22 02:46:44 UTC
After running
% guile -c "(use-modules (ice-9 slib)) (require 'printf)"
ERROR: Unbound variable: with-load-pathname

in bash,
$? is 1.

in /usr/share/slib/version.txt:
@set SLIBVERSION 3a3
@set SLIBDATE February 2006

% locate slib.sh
/usr/local/lib/slib/slib.sh
/usr/local/src/gnucash-2.0.1/slib/slib.sh
/usr/share/guile/site/slib/slib.sh
/usr/share/slib/slib.sh

All those directories are essentially the same.  The /usr/local/lib directory doesn't have the .txi files.

If I include the patch to /usr/share/guile/1.8/ice-9/slib.scm (shown above),
% guile -c "(use-modules (ice-9 slib)) (require 'printf)"
% echo $status
0
Comment 11 Derek Atkins 2006-08-22 13:24:31 UTC
Include the patch, then run configure.  If it fails, look in config.log and see what it says.
Comment 12 Steve Kelem 2006-08-22 20:56:10 UTC
Line 80 of config.log says --with-slibdir=/lib:
Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,f95,java,ada --disable-checking --with-gxx-include-dir=/usr/include/c++/4.0.2 --enable-java-awt=gtk --disable-libjava-multilib --with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit --without-system-libunwind --host=i586-suse-linux

Line 1708 says:
configure:27469: checking for (g-wrap gw-glib-spec) guile module
configure:27475: result: yes
configure:27495: checking for SLIB support
configure:27509: error:

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

This wasn't enough info to point out what's wrong, so
I added some print lines to the configure file right before this error and found:
checking for SLIB support... start DEBUG
checking for SLIB support... LD_LIBRARY_PATH= /usr/local/lib:
GUILE_LOAD_PATH= /usr/local/share/guile/site:
/usr/bin/guile -c (use-modules (ice-9 slib)) (require 'printf)
end DEBUG
configure: error:

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

If I run the standalone guile command, I get:
ERROR: Value out of range 0 to 16: -1

Apparently, guile doesn't like the trailing ":" on GUILE_LOAD_PATH.

GUILE_LOAD_PATH is read, but not set in the configure script!
If I run 
% guile -c '(display %load-path)' (/usr/local/share/guile/site /usr/share/guile/site /usr/share/guile/1.8 /usr/share/guile /usr/share/guile/site /usr/share/guile/1.8 /usr/share/guile)
and then
% setenv GUILE_LOAD_PATH /usr/local/share/guile/site:/usr/share/guile/site:/usr/share/guile/1.8:/usr/share/guile

then configure works!

I think what I did to get this to compile is beyond what any end-user is willing to do to get this package to compile.
Please fix the configure script so that GUILE_LOAD_PATH gets set if it is not already set.
Comment 13 Derek Atkins 2006-08-22 21:12:27 UTC
This has got to be a guile version-specific error, because it works for me:

$ env GUILE_LOAD_PATH=/tmp/foo: guile -c "(use-modules (ice-9 slib)) (require 'printf)"
$ echo $status
0
$ guile --version
Guile 1.6.7

GUILE_LOAD_PATH is something the user can set.  The configure script is designed to use it if it's already set by the user, and just add the extra paths that the configure script requires.  I don't see how setting it to an empty string if it's not set is going to help anything.

On a different note...  I have no idea what --with-slibdir is for, but I can assure you that it has nothing to do with SLIB.

You say:

> If I run the standalone guile command, I get:
> ERROR: Value out of range 0 to 16: -1

But you don't show the actual command-line you ran, so I cannot tell if this is user error.

Can you try reverting to guile 1.6 and see if you can get it working?
Comment 14 Steve Kelem 2006-08-23 18:44:23 UTC
I reverted to guile 1.6, and now I'm back in the realm of
GUILE_LOAD_PATH= /usr/local/share/guile/site:/usr/local/share/guile/site:/usr/share/guile/site:/usr/share/guile/1.6:/usr/share/guile:/usr/share/slib
/usr/bin/guile -c (use-modules (ice-9 slib)) (require 'printf)
end DEBUG
configure: error:

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

/usr/bin/guile -c "( use-modules ( ice-9 slib ) ) ( require 'printf)"
ERROR: Unbound variable: with-load-pathname

I've spent far too many frustrating hours trying to debug this program.  I give up.

I looked at trying to install gnucash-2.0.1 from rpm.pbone.net (for SuSe 10.0 and 10.1).  It claims that there are 122 rpms that must be installed before gnucash will work.  Is it just me, or does this seem excessive?  Is there a push-button way to install gnucash-2.0.1 on SuSe 10.0 and 10.1?  yast2's install knows about gnucash 1.8, but not 2.0.x.
Comment 15 Derek Atkins 2006-08-23 18:51:20 UTC
122 RPMS does sound excessive.
How come you didn't just install the SuSE guile, guile-devel, and slib RPMS?
The only dependency you should have to build from source on SuSE is g-wrap.  Everything else should be available as an RPM in the distribution.

I know there are plenty of other people with gnucash-2.0.1 working on SuSE 10 so I think this really is just you.   I know you don't want to hear that, and I know it's very frustrating.  You might want to ask for help on the gnucash-user mailing list, or look at http://wiki.gnucash.org/wiki/GnuCash which links to ftp://ftp.gwdg.de/linux/misc/suser-crauch/10.1/RPMS/i686/
Comment 16 Steve Kelem 2006-08-24 22:14:55 UTC
I finally got some of the rpms from ftp.gwdg.de/linux/misc/suser-crauch/10.0/RPMS/i686/:
gnucash-2.0.1-0.rauch.1.i686.rpm
gnucash-2.0.1-0.rauch.2.i686.rpm
g-wrap-1.9.6-0.rauch.3.i686.rpm
libgeier-0.6-0.rauch.1.SuSE1000.i686.rpm
taxbird-0.7-0.rauch.1.SuSE1000.i686.rpm
xmlsec1-1.2.9-0.rauch.1.i686.rpm
xmlsec1-devel-1.2.9-0.rauch.1.i686.rpm
xmlsec1-nss-1.2.9-0.rauch.1.i686.rpm
xmlsec1-nss-devel-1.2.9-0.rauch.1.i686.rpm
xmlsec1-openssl-1.2.9-0.rauch.1.i686.rpm
xmlsec1-openssl-devel-1.2.9-0.rauch.1.i686.rpm

and some of the rest from ftp.iasi.roedu.net/mirrors/suse-apt/oc2pus/10.0/RPMS/i586:
aqbanking-2.2.0-0.oc2pus.1.i586.rpm
gengetopt-2.17-0.oc2pus.1.i586.rpm
gwenhywfar-2.3.1-0.oc2pus.1.i586.rpm
ktoblzcheck-1.11-42.oc2pus.1.i586.rpm
libchipcard2-2.1.7-0.oc2pus.1.i586.rpm
libofx-0.8.1-1.oc2pus.cvs20060802.i586.rpm

and the rest from the SuSE 10.0 distribution.
The reason I didn't just get it from the SuSE 10.0 distribution is because it was either not there or it was verion 1.8.x. (It's been so long, I don't remember which one it was.)
Comment 17 Devin LaSalle 2006-08-29 02:00:18 UTC
Hi Derek -
I've got exactly the same "Cannot find SLIB" error that Steve Kelem describes on this bug while trying to ./configure GNUCash 2.0.1 on my RHEL4 system tonight. I have guile 1.6.4 and SLIB 3a3 installed.  From reading your posts here, here is what I've come up with so far:
> A symlink from /usr/share/guile to /usr/share/slib IS present.
> With the commands that you suggested, here's what I get from the bash shell:
=====
[root@localhost gnucash-2.0.1]# guile -c "(use-modules (ice-9 slib)) (require 'printf)"
ERROR: Unbound variable: with-load-pathname
[root@localhost gnucash-2.0.1]# echo $?
2
=====
I really am an end-user without enough detailed knowledge of scripts to understand or even copy the fix that Steve came up with in that post, so I am good and lost at this point.  Might you possibly be kind enough with any further suggestions?
(BTW, I am new to this forum, so if I should have started a new bug, please excuse)
Comment 18 Derek Atkins 2006-08-29 03:21:23 UTC
Devin,

On RHEL4 should install the guile and other RPMS from http://people.redhat.com/notting/gnucash/ as appropriate.
Comment 19 Devin LaSalle 2006-08-29 15:24:00 UTC
Doh!! Would you believe me if I said somebody else wrote that comment? No? How about if I claim to have been fatigued from working late?  Well, in any case, GNUCash came up surprisingly easily on the RHEL4 system (as it could have last night) after I just simply used the .rpms provided in the 2.0 folder.  Thanks Derek, my apology for your time, and keep up the great work.
Comment 20 Quillian Rutherford 2006-10-19 06:31:11 UTC
I just installed Slackware 11 and then tried to add Gnucash, got to this problem with Guile 1.8.1 (updated that first off to see if that was the problem) and here is what I did:
1)
export SCHEME_LIBRARY_PATH=/usr/share/slib/

2)
From http://www.mail-archive.com/bug-guile@gnu.org/msg03869.html I got some clues,
I edited /usr/share/guile/1.8/ice-9/slib.scm (Your directory may vary)
I added the line (again this path may vary, it's hardcoded, caveat emptor):
 (load "/usr/share/slib/guile.init")

just before (define-module (ice-9 slib)

From the command line then you can execute:
 guile -c "(use-modules (ice-9 slib)) (require 'printf)"

Instead of having to wait for the ./configure script to get there, if you don't get an error, your Guile problem is solved (I think this is really a guile/slib issue, but I was just wanting to install Gnucash and it was annoying.)




Comment 21 Quillian Rutherford 2006-10-19 07:09:24 UTC
(In reply to comment #20)
> I just installed Slackware 11 and then tried to add Gnucash, got to this
> problem with Guile 1.8.1 (updated that first off to see if that was the
> problem) and here is what I did:
> 1)
> export SCHEME_LIBRARY_PATH=/usr/share/slib/
> 
> 2)
> From http://www.mail-archive.com/bug-guile@gnu.org/msg03869.html I got some
> clues,
> I edited /usr/share/guile/1.8/ice-9/slib.scm (Your directory may vary)
> I added the line (again this path may vary, it's hardcoded, caveat emptor):
>  (load "/usr/share/slib/guile.init")
> 
> just before (define-module (ice-9 slib)
> 
> From the command line then you can execute:
>  guile -c "(use-modules (ice-9 slib)) (require 'printf)"
> 
> Instead of having to wait for the ./configure script to get there, if you don't
> get an error, your Guile problem is solved (I think this is really a guile/slib
> issue, but I was just wanting to install Gnucash and it was annoying.)
> 

ER, I also had to 
1) export GUILE_LOAD_PATH=/usr/share
2) Edit .configure for GnuCash and change the check not to use G_WRAP_LIB_DIR (I have suspicions this might be specific to my installation) and set SCHEME_LIBRARY_PATH, ie:

if LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
  GUILE_LOAD_PATH="${G_WRAP_MODULE_DIR}:${GUILE_LOAD_PATH}" \
  SCHEME_LIBRARY_PATH="${SCHEME_LIBRARY_PATH}" \
        ${GUILE} -c "(use-modules (ice-9 slib)) (require 'printf)" > /dev/null 2>&1


Comment 22 Florian Steinel 2006-11-21 19:40:45 UTC
from http://not-your-cup-of-chai.blogspot.com/2006/11/slackware-11-and-adventure-with-gnucash.html:
how about an configure flag slib
configure --with-slib=/usr/share/here/is/slib
inside configure:
guile -c "(load \"/usr/share/here/is/slib/guile.init\") (require 'printf)"
this works for me.
Comment 23 Derek Atkins 2006-11-21 20:05:44 UTC
The fact that configure can find it is not sufficient; GUILE needs to find it.  If you know where slib is installed just symlink it into the guile path.
Comment 24 Thomas Bushnell, BSG 2007-09-09 18:09:38 UTC
guile-1.8 does not have correct slib support yet; it is still using an older
way of supporting slib that doesn't work anymore.  @#$*(@*#$(@

Comment 25 Bryce Nordgren 2007-09-20 15:17:17 UTC
Thomas is correct.  I did receive some help from the bug-guile list on how to install slib properly (http://lists.gnu.org/archive/html/bug-guile/2007-09/msg00008.html).  The current situation is that after making the suggested change, loading Slib succeeds on the second try, not the first:

# guile
guile>  (use-modules (ice-9 slib))
ERROR: Unbound variable: system
ABORT: (unbound-variable)
guile>  (use-modules (ice-9 slib))
guile> 

Ergo, ./configure fails.  I'm continuing to pursue the solution with them.

I do have a couple of observations:
 1] GnuCash depends on two upstreams cooperating (Slib and Guile).
 2] Neither upstream community seems to feel particularly motivated to ensure that they work together.  (Slib bug was first reported to Guile community 10/2006; Guile 1.8.1 and Slib 3a4.  Guile subsequently had a release in 7/2007, but did not address the issue.)

Now I can't help you because I can't read scheme, much less write it.  I suspect that is the case with many of your users, even the ones who can program.  Consider this: if you were to remove the scheme dependency in favor of...well any language with the prevailing functional or object-oriented paradigm (python, perl, java, gdl...even *spit* basic) you greatly expand the utility of your extensibility feature by making your product familiar to a much wider audience.  Simultaneously, you expand your potential developer/contributor base by at least an order of magnitude.  I do know that of the languages I listed, python at least is designed to be incorporated into stand-alone apps in much the same way as guile.  And lastly, something like Python or Perl has a single reference implementation with which all library developers feel an obligation to interoperate.  

Alternatively, what functionality would GnuCash retain if the extensibility portion were removed?  I just need scheduled transactions, manual transaction entry, and reconciling accounts to work.  Reports can disappear.  In four years I've never written a Scheme script myself, and now I find that this feature I've never used and don't care about is blocking access to my books due either to upstream apathy or upstream overwork.  Is GnuCash structured such that the Guile dependency could be made optional? 

If I was a GnuCash developer, I don't know what would worry me more: that problems outside your codebase have such a devastating impact on your product, or that the people causing those problems don't resolve them in a timely fashion.
Comment 26 Derek Atkins 2007-09-20 18:26:10 UTC
Without scheme, half the application would stop working.  For one thing, all the reports require scheme!  So I'm afraid ripping out scheme just isn't on the table at this point.

Now, removing the slib dependency might be a good thing, just like we've removed the g-wrap dependency.

I'll also just point out that all the major distributions have already solved this problem, so, no, I'm really not all that worried about it.  But thank you for your concern.
Comment 27 tom.browder 2007-10-02 01:48:41 UTC
I'm having the same problems as Bryce--and same results--the proffered solution hasn't worked for me.  

I'm running Fedora 7.  Had to remove F7 guile because it doesn't have the guile development environment needed by gnucash.

I installed guile-1.8.2 and then have followed all instructions to get slib installed but haven't yet been able to convince ./configure with gnucash that slib is installed.

This is a sad state of affairs. I last visited gnucash a year or so ago and I believe slib installation was a problem then, too.

I agree with Bryce--dump guile for gnucash or get it better integrated with the gnucash package installation.

-Tom

Comment 28 Derek Atkins 2007-10-02 01:57:47 UTC
Tom,

Fedora 7 most certainly has the full development environemnt.  You just didn't install the guile-devel package.  First, clean your system of everything you built by hand, then:

  yum install guile-devel slib

That's all you need on Fedora 7 and it works just fine.  F7 is my development environment and I have no external packages.
Comment 29 tom.browder 2007-10-02 10:51:30 UTC
Derek, my bad--sorry.  I apologize for the rude comments.

Actually I had checked for the availability of guile-devel with yom but didn't see it--I must have made a typo somewhere.

Thanks.

-Tom
Comment 30 Halton Huo 2008-03-10 06:10:26 UTC
Derek, I have slib installed, but still get erros. I'm using Solaris platform.

$ guile -c "(use-modules (ice-9 slib)) (require 'printf)"
ERROR: In procedure open-file:
ERROR: No such file or directory: "/usr/share/guile/1.8/slib/mklibcat"
$ls /usr/share/guile/1.8/slib/|grep mklibcat
mklibcat.scm

Any clue?
Comment 31 Derek Atkins 2008-03-10 14:57:15 UTC
Halton,
You didn't follow the slib instructions to build the library catalog.  As root, run:

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

This should build the new catalog file.  It should only need to be done once.
Comment 32 Rolf Leggewie 2008-06-11 12:27:59 UTC
I also ran into this problem lately on my ubuntu hardy machine.  I used to be able to compile just fine a few months ago.

$ dpkg -l guile*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name                                          Version                                       Description
+++-=============================================-=============================================-==========================================================================================================
un  guile                                         <none>                                        (no description available)
ii  guile-1.6                                     1.6.8-6ubuntu1                                The GNU extension language and Scheme interpreter
ii  guile-1.6-dev                                 1.6.8-6ubuntu1                                Development files for Guile 1.6
un  guile-1.6-doc                                 <none>                                        (no description available)
ii  guile-1.6-libs                                1.6.8-6ubuntu1                                Main Guile libraries
ii  guile-1.6-slib                                1.6.8-6ubuntu1                                Guile SLIB support
ii  guile-1.8                                     1.8.3+1-1                                     The GNU extension language and Scheme interpreter
un  guile-1.8-doc                                 <none>                                        (no description available)
ii  guile-1.8-libs                                1.8.3+1-1                                     Main Guile libraries
un  guile-g-wrap                                  <none>                                        (no description available)
ii  guile-library                                 0.1.6-1                                       Library of useful Guile modules
pn  guile-www                                     <none>                                        (no description available)

$ dpkg -l slib*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name                                          Version                                       Description
+++-=============================================-=============================================-==========================================================================================================
ii  slib                                          3a4-4                                         Portable Scheme library

$ sudo apt-get build-dep gnucash
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  g-wrap gnucash-compile-deps guile-1.8 guile-library
0 upgraded, 0 newly installed, 4 to remove and 0 not upgraded.
After this operation, 1835kB disk space will be freed.
Do you want to continue [Y/n]? n
Abort.

$ ./configure --prefix=/export/gnucash --enable-debug --enable-doxygen --enable-locale-specific-tax --enable-error-on-warning --enable-compile-warnings --enable-hbci
[...]
checking for guile... /usr/bin/guile
checking for guile - 1.6.0 <= version < 99.99.99... yes: 1.6.8
checking for guile - 1.8.0 <= version < 99.99.99... no: 1.6.8
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

$ make clean
cd . && /bin/sh /usr/src/gnucash/missing --run aclocal-1.9 -I macros -I m4
aclocal: couldn't open directory `m4': No such file or directory
make: *** [aclocal.m4] Error 1
Comment 33 Halton Huo 2008-06-23 09:55:59 UTC
Derek, sorry for late response. I tried your comments in #31, but still fails.

#guile -c "(use-modules (ice-9 slib)) (require 'new-catalog)"
ERROR: In procedure open-file:
ERROR: No such file or directory: "/usr/share/guile/1.8/slib/mklibcat"
Comment 34 Derek Atkins 2008-06-23 12:41:22 UTC
Well, that would imply that either you don't have slib installed in the place guile thinks it should be, or /usr/share/guile/1.8/slib is not writable.
Comment 35 Ralph Mytown 2008-12-11 20:52:42 UTC
Please notice that I tried to compile gnucash today, with this under the Bash shell:

export GUILE_LOAD_PATH=/usr/local/share/guile/site:/usr/share/guile/site:/usr/share/guile/1.8:/usr/share/guile

I already have this message of bug while doing this:
./configure --prefix=/opt/gnucash --enable-debug --enable-doxygen --enable-error-on-warning --enable-compile-warnings

here is the message:

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

I had to change to version 1.6:

export GUILE_LOAD_PATH=/usr/local/share/guile/site:/usr/share/guile/site:/usr/share/guile/1.6:/usr/share/guile

and configure runs well!

I did not have to create a symlink from /usr/share/guile to /usr/share/slib nor for slibcat.

Comment 36 w. szukalski 2009-02-06 21:07:10 UTC
HOWTO install SLIB:

I have installed guile-1.8.6 and got '/usr/share/guile/1.8/'.

 cd /usr/share/guile
 ln -sf 1.8 site
 cd 1.8
 cp /PATH/slib.zip .
 unzip slib.zip
 chown -R root.root slib
 cd slib
 cp mklibcat.scm mklibcat
 make catalogs
 cd ..
 rm slib.zip
 vim -R slibcat

Now 'configure' of gnucash should no longer complain.

winfried
Comment 37 tom.browder 2009-02-07 18:07:59 UTC
I have filed my version of this HOWTO as doc bugs with both SLIB and guile mailing lists.  See my version of a fix described at:

http://mail.google.com/mail/?hl=en&tab=wm#label/gnucash-devel/11f1a6cfb53bfc43

and

http://mail.google.com/mail/?hl=en&tab=wm#label/gnucash-user/11f1a6cfb53bfc43

and

http://mail.google.com/mail/?hl=en&tab=wm#label/0_guile-devel/11f1a6cfb53bfc43

HTH.

-Tom
Comment 38 John Ralls 2018-06-29 21:10:09 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=347922. Please update any external references or bookmarks.