Subject: Re: [clisp-list] iconv(3)

From: Bruno Haible <[email-masked]>
Date: Thu Nov 21 05:58:02 2002

> What does it mean when iconv() returns ENOENT ? It happens during
> cygwin build - as reported by Alex Tibbles. It happened after I
> updated cygwin so it may be related with newer version of libiconv.

Indeed. On systems like cygwin, libiconv has to #define EILSEQ by itself.
In libiconv 1.7 I used to
  #define EILSEQ EINVAL
but this was a mistake, and so in libiconv 1.8 it is changed to
  #define EILSEQ ENOENT

So it is a binary incompatibility; sorry that should have been advertised
in libiconv 1.8's README.

The fix is to rebuild clisp against libiconv-1.8's <iconv.h> file.

Fortunately, libintl (which also uses libiconv) doesn't need to be
rebuilt.

Bruno

---

From: Arseny Slobodjuck <[email-masked]>
Date: Fri Nov 22 01:10:04 2002

Hello Bruno,

> in libiconv 1.8's README.

I think now I know what happens. Cygwin didn't have EILSEQ until recently.
But now it does. So when I compile clisp even with new iconv.h,
EILSEQ is not redefined in my binaries, but it is redefined in iconv library.

I cannot build libiconv on cygwin by myself. It doesn't pass configure
stage and I don't know much about that (configure, autoconf, libtool,
m4 etc).

-- 
Best regards,
 Arseny

---

From: Alex Tibbles <[email-masked]>
Date: Fri Nov 22 04:33:06 2002

Hello there.
I'm wondering what this means for compiling clisp on
cygwin. Cygwin (current) has version 1.8 of libiconv.
Currently, clisp is not compatible with this version.
Is this summary correct?
Is this a problem in libiconv or clisp?

alex

<snip>

> stage and I don't know much about that (configure,

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

---

From: Arseny Slobodjuck <[email-masked]>
Date: Fri Nov 22 05:51:03 2002

Hello Alex,

> Is this a problem in libiconv or clisp?

If I'm right, solution is to rebuild libiconv against new
cygwin headers (namely errno.h) and link clisp with it.
It will be still libiconv 1.8 I think.

-- 
Best regards,
 Arseny

---

From: Arseny Slobodjuck <[email-masked]>
Date: Sat Nov 23 04:04:02 2002

Hi,

> It will be still libiconv 1.8 I think.

I just managed to rebuild libiconv (just learned to use patched
sources from cygwin) and problem has gone. Also I had to build
and install libsigsegv from its CVS - clisp didn't get build
without it.

-- 
Best regards,
 Arseny

---

From: Alex Tibbles <[email-masked]>
Date: Sat Dec 7 10:01:07 2002

> and install libsigsegv from its CVS - clisp didn't
which libiconv sources are you using? i tried the
source installed by cygwin's setup program and had no
luck. (the problems seemed to mirror gcc-2.95->gcc-3.x
problems that the maintainers of cygwin's setup
program itself were having eg.
http://cygwin.com/ml/cygwin-apps/2002-11/msg00003.html)).
i fiddled a few of the problems (adding using
directives) but there were sooooo many i figured there
must be a better version of the source somewhere). i
also tried libiconv's cvs on source forge to no avail.

thanks,
alex

---

From: Arseny Slobodjuck <[email-masked]>
Date: Sat Dec 7 16:16:02 2002

Hello Alex,

Sunday, December 08, 2002, 4:00:26 AM, you wrote:

> luck.
Did you use patch included ? I used libiconv-1.8-2.sh
script with commands at its end - prep, mkdirs, conf etc. bash
hung up with it so I used '/bin/sh ./libiconv-1.8-2.sh prep' for
example.
-- 
Best regards,
 Arseny

---

From: Alex Tibbles <[email-masked]>
Date: Sun Dec 8 11:42:02 2002

> ./libiconv-1.8-2.sh prep' for
the first time i got the source package i didnt see
the patch and script - dont know how i missed it!
the second time, i couldnt figure out how to use the
shell script so simply applied the patch. 'patch -p0
<patchname>'. then i built and installed libiconv
without hitch (well nearly - i got my prefix wrong).
i then got the fresh source for clisp, configured it,
and make'ed it. it failed the first time, but i had
left it unattended so i dont know at which point, so i
tried make again and it succeeded! i ran the tests
('make test' and 'make testsuite') and one of the
testsuite segfaulted. im going to start afresh and get
a more consistent set of results (the segfault appears
at a variable point) and try to replicate my earlier
build problem.

thanks very much for your pointers!

alex