[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

guile-cairo package: library not found



Guile seems to be looking for libguile-cairo in '/usr/lib/' instead of
'/usr/lib/x86_64-linux-gnu/'.

##############
# package info

$ apt show guile-cairo
Package: guile-cairo
Version: 1.11.2-5
Priority: optional
Section: lisp
Maintainer: Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>
Installed-Size: 317 kB
Depends: guile-3.0-libs, libc6 (>= 2.14), libcairo2 (>= 1.10.0),
sgml-base (>= 1.28)
Homepage: https://www.nongnu.org/guile-cairo/
Tag: devel::lang:scheme
Download-Size: 66.2 kB
APT-Manual-Installed: yes
APT-Sources: http://deb.debian.org/debian bookworm/main amd64 Packages
Description: Guile bindings for Cairo
 This package contains Guile modules that provide access to the Cairo
 library. Cairo is a multi-platform library providing anti-aliased
 vector-based rendering for multiple target backends.

$ apt-file show guile-cairo
guile-cairo: /usr/lib/x86_64-linux-gnu/libguile-cairo.la
guile-cairo: /usr/lib/x86_64-linux-gnu/libguile-cairo.so
guile-cairo: /usr/lib/x86_64-linux-gnu/libguile-cairo.so.0
guile-cairo: /usr/lib/x86_64-linux-gnu/libguile-cairo.so.0.0.0
guile-cairo: /usr/share/doc/guile-cairo/AUTHORS
guile-cairo: /usr/share/doc/guile-cairo/NEWS.gz
guile-cairo: /usr/share/doc/guile-cairo/README.gz
guile-cairo: /usr/share/doc/guile-cairo/TODO
guile-cairo: /usr/share/doc/guile-cairo/changelog.Debian.gz
guile-cairo: /usr/share/doc/guile-cairo/changelog.gz
guile-cairo: /usr/share/doc/guile-cairo/copyright
guile-cairo: /usr/share/guile/site/cairo.scm
guile-cairo: /usr/share/guile/site/cairo/cairo-procedures.txt
guile-cairo: /usr/share/guile/site/cairo/config.scm
guile-cairo: /usr/share/guile/site/cairo/vector-types.scm
guile-cairo: /usr/share/lintian/overrides/guile-cairo

#########
# problem

$ guile -q
scheme@(guile-user)> (use-modules (cairo))
While compiling expression:
In procedure load-foreign-library: file: "/usr/lib/libguile-cairo",
message: "file not found"/usr/lib/libguile-cairo", message: "file not
found"
scheme@(guile-user)> ,m cairo
scheme@(cairo)> *cairo-lib-path*
$1 = "/usr/lib/libguile-cairo"

The library path seen by guile differs from the path in cairo/config.

$ cat /usr/share/guile/site/cairo/config.scm | sed -e '/^;;.*/d' -e
'/^[[:space:]]*$/d'
(define-module (cairo config)
  :export     (*cairo-lib-path*
               *cairo-documentation-path*))
(define *cairo-lib-path* "/usr/lib/x86_64-linux-gnu/libguile-cairo")
(define *cairo-documentation-path*
"/usr/share/guile/site/cairo/cairo-procedures.txt")


Reply to: