From: Karol Skocik
Subject: problem compiling CL-GD with CMUCL 19b
Date: 
Message-ID: <1124220195.974573.148000@g43g2000cwa.googlegroups.com>
Hi,
  I have a strange problem compiling CL-GD with CMUCL 19b on Linux
2.6.11-6mdk i686. I have installed all required libraries like
libiconv, libpng, ... and also several ASDF installable libraries
before without problem.

  The cl-gd-glue.so library builds with no problem, but then when I do
:
  (asdf:oos 'asdf:compile-op :cl-gd)
  it complains with this :

  Error in function SYSTEM::LOAD-OBJECT-FILE:
    Can't open object
"/home/neptun/.asdf-install-dir/site/cl-gd-0.4.8/cl-gd-glue.so":
"libiconv.so.2: cannot open shared object file: No such file or
directory"
    [Condition of type SIMPLE-ERROR]

  I have checked that the libiconv stays in /usr/local/lib, ls shows it
:
-rw-r--r--   1 root   root       780 Aug 16 20:25 libiconv.la
-rw-r--r--   1 root   root   1024519 Aug 16 20:25 libiconv_plug.so
lrwxrwxrwx   1 root   root        17 Aug 16 20:25 libiconv.so ->
libiconv.so.2.2.0
lrwxrwxrwx   1 root   root        17 Aug 16 20:25 libiconv.so.2 ->
libiconv.so.2.2.0
-rw-r--r--   1 root   root   1026888 Aug 16 20:25 libiconv.so.2.2.0

also the cl-gd-glue.so is on that place where the compiler complains.
The access right are set to user neptun and it's fine.

When I do this :
CL-USER> (in-package :system)
#<The SYSTEM package, 85/139 internal, 141/179 external>
SYS> (load-object-file "libiconv.so.2")

it fails with : File-error in function TRUENAME: The file
"libiconv.so.2" does not exist. - which is as it shoud be, right?

when I supply the complete path :
SYS> (load-object-file "/usr/local/lib/libiconv.so.2")
then it loads ok.

------------

So I think that the problem might be with some *variable* in my
configuration where the SYSTEM:LOAD-OBJECT-FILE looks for libraries
which is not set up properly (missing "/usr/local/lib") or something...


I am quite new to Lisp, so any ideas will be appreciated.

Regards,
  Karol

From: Edi Weitz
Subject: Re: problem compiling CL-GD with CMUCL 19b
Date: 
Message-ID: <ubr3xr7jx.fsf@agharta.de>
On 16 Aug 2005 12:23:16 -0700, "Karol Skocik" <············@gmail.com> wrote:

> When I do this :
> CL-USER> (in-package :system)
> #<The SYSTEM package, 85/139 internal, 141/179 external>
> SYS> (load-object-file "libiconv.so.2")
>
> it fails with : File-error in function TRUENAME: The file
> "libiconv.so.2" does not exist. - which is as it shoud be, right?
>
> when I supply the complete path :
> SYS> (load-object-file "/usr/local/lib/libiconv.so.2")
> then it loads ok.

It looks like you've been bitten by a recent change in CMUCL.  The
problem is described here:

  <http://article.gmane.org/gmane.lisp.cmucl.devel/8075>

(Note that "18a" and "18b" there should be "19a" and "19b"
respectively.)  AFAIK the latest 19b releases should not show these
symptoms anymore, i.e.

  (sys::load-object-file "libiconv.so.2")

should just work.  You might want to ask on the CMUCL mailing list
about which version to use.

Cheers,
Edi.

PS: The problem /could/ also be that your lib is in /usr/local/lib and
    thus not found.  I'm pretty sure the error message would have been
    different then, though.  Just to make sure try to load an existing
    library in /usr/lib the same way (i.e. without directory info) and
    see if you get the same error message - or set LD_LIBRARY_PATH
    before you start CMUCL.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")
From: Karol Skocik
Subject: Re: problem compiling CL-GD with CMUCL 19b
Date: 
Message-ID: <1124233002.091597.147660@g49g2000cwa.googlegroups.com>
solved, thanks. it was enough to make a link from /usr/lib to point to
libiconv.so.2.2.0 in /usr/local/lib

Thanks!

Regards,
  Karol