Problems with Gnucash development environment on Ubuntu 10.04 -- Solved

Tao Wang dancefire at gmail.com
Thu May 13 00:31:07 EDT 2010


Hi,

I confirmed your method works, and I simplified your procedure.

You don't need to remove guile-1.6-*, just install guile-1.8 and
guile-1.8-dev will make it work. Install guile-1.8 will make the
default guile become guile 1.8, you can check it by 'guile --version'
before and after install guile-1.8. And install guile-1.8-dev will
uninstall guile-1.6-dev automatically. Installing guile-1.8-dev will
let './configure' find guile 1.8, otherwise, only guile 1.6 will be
found.

As you said, since Ubuntu/Debian doesn't have guile-1.8-slib, so, we
should manually create the softlink for it. Actually the package
'guile-1.*-slib' is just a softlink.
'ln -s ../../slib slib'

For more information on this, please check following links:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=441110
https://bugs.launchpad.net/ubuntu/+source/gnucash/+bug/341216

And we need new catalog for slib by this command:

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

which will create file '/usr/share/guile/1.8/slibcat'

For more information on this, please check folloing links:

http://www.gnu.org/software/guile/manual/html_node/SLIB-installation.html
https://bugzilla.gnome.org/show_bug.cgi?id=347922

So, build GnuCash 2.3.x from svn trunk on Ubuntu 10.04 should use
following commands:

==================================
sudo apt-get build-dep gnucash
sudo apt-get install texinfo subversion intltool libdbi0-dev
libdbd-{sqlite3,pgsql,mysql} guile-1.8 guile-1.8-dev doxygen
cd /usr/share/guile/1.8
sudo ln -s ../../slib slib
sudo guile -c "(use-modules (ice-9 slib)) (require 'new-catalog)"
mkdir -p ~/unstable ~/development
rm -rf ~/unstable/gnucash ~/development/gnucash
cd ~/development
svn co http://svn.gnucash.org/repo/gnucash/trunk gnucash
cd gnucash
./autogen.sh
./configure --prefix=$HOME/unstable/gnucash --enable-debug
--enable-doxygen --enable-error-on-warning --enable-compile-warnings
make all install
~/unstable/gnucash/bin/gnucash
==================================

I tried this on both my working ubuntu 10.04 and a brand new Ubuntu
10.04 installation, it works. I will update the instructions for
Ubuntu 10.04 in wiki later.

On Thu, May 13, 2010 at 5:46 AM, Valdis Vītoliņš <valdis.vitolins at odo.lv> wrote:
> Done with Gnucash revision 19152.
> which still doesn't run using guile 1.6
>
> But, as Tao noted, Ubuntu 10.04 doesn't have guile-1.8-slib package
> similarly to guile-1.6-slib.
> Fortunately this package doesn't have anything exceptional:
> As root
> root at studio:/# apt-file list guile-1.6-slib
> guile-1.6-slib: /usr/share/doc/guile-1.6-slib/changelog.Debian.gz
> guile-1.6-slib: /usr/share/doc/guile-1.6-slib/copyright
> guile-1.6-slib: /usr/share/guile/1.6/slib
> So only valuable file is symlink /usr/share/guile/1.6/slib->../../slib.
>
> So, we can try to migrate to 1.8 ant patch missing symlink.
> Check for installed packages:
> dpkg-query -W|grep guile
> and remove them:
> apt-get remove --purge guile-1.6 guile-1.6-dev guile-1.6-libs
> guile-1.6-slib guile-1.8-libs libguile-ltdl-1
>
> Add guile 1.8 packages
> apt-get install --reinstall guile-1.8 guile-1.8-dev guile-1.8-libs
> (of course accept, if it says that need to install more)
>
> Create missing symlink:
> cd /usr/share/guile/1.8
> ln -s ../../slib slib
>
> And say "focus-pocus":
> guile -c "(use-modules (ice-9 slib)) (require 'new-catalog)"
>
> (John, can you explain in plain English what that means?)
>
> Then fully rebuild Gnucash
> As user:
> make clean
> ./autogen.sh
> ./configure --enable-debug --prefix=/opt/gnucash-svn
> make
> sudo make install
>
> /opt/gnucash-svn/bin/gnucash
>
> And it works!!
> (Was checked on two computers, so should be more or less reproducible).
>
> Valdis
>
>
>> On May 12, 2010, at 6:00 AM, Tao Wang wrote:
>>
>> > Hi,
>> >
>> > I got exactly same problem when building GnuCash from trunk in Ubuntu
>> > 10.04. I confirmed /usr/share/guile/1.6/slib is a softlink to
>> > /usr/share/slib. But I cannot find slib for 1.8 in Ubuntu. And I think
>> > the build script is using 1.6 instead of 1.8, because I got following
>> > lines during running ./configure:
>>
>> Slib is pure scheme, so there's no compiling involved. You can just create the link in /usr/share/guile/1.8 and run the following:
>> guile -c "(use-modules (ice-9 slib)) (require 'new-catalog)"
>>
>> That assumes, of course, that guile 1.8 is the first guile on the path... which is the one that gnucash would use as well.
>>
>> Regards,
>> John Ralls
>> _______________________________________________
>> gnucash-devel mailing list
>> gnucash-devel at gnucash.org
>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>
>
> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel at gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>



-- 
Regards

Tao Wang


More information about the gnucash-devel mailing list