* libguile package | dlopen: no such file: guile-readline.dll
@ 2024-01-06 1:07 asebian
2024-01-06 9:28 ` Brian Inglis
0 siblings, 1 reply; 5+ messages in thread
From: asebian @ 2024-01-06 1:07 UTC (permalink / raw)
To: cygwin
package: liguile3.0_1
version: 3.0.9-2
================
Problem
Loading the ice-9/readline module coming with libguile raises an error:
$ guile -q
scheme@(guile-user)> (use-modules (ice-9 readline))
While compiling expression:
In procedure dlopen: file "guile-readline.dll", message "No such file
or directory"
Seems as if version number 0 got attached:
$ ls -1 /usr/lib/guile/3.0/extensions/
guile-readline.la
guile-readline-0.dll
C:\cygwin64\lib\guile\3.0\exte
nsions> dir /B
guile-readline-0.dll
guile-readline.la
================
Makeshift fix
Create symlink (as Admin):
C:\cygwin64\lib\guile\3.0\extensions> mklink guile-readline.dll
guile-readline-0.dll
symbolic link created for guile-readline.dll <<===>> guile-readline-0.dll
$ guile -q
scheme@(guile-user)> (use-modules (ice-9 readline))
scheme@(guile-user)> (activate-readline)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: libguile package | dlopen: no such file: guile-readline.dll
2024-01-06 1:07 libguile package | dlopen: no such file: guile-readline.dll asebian
@ 2024-01-06 9:28 ` Brian Inglis
2024-01-06 9:43 ` marco atzeri
0 siblings, 1 reply; 5+ messages in thread
From: Brian Inglis @ 2024-01-06 9:28 UTC (permalink / raw)
To: cygwin
On 2024-01-05 18:07, asebian via Cygwin wrote:
> package: liguile3.0_1
> version: 3.0.9-2
>
> ================
> Problem
>
> Loading the ice-9/readline module coming with libguile raises an error:
>
> $ guile -q
> scheme@(guile-user)> (use-modules (ice-9 readline))
> While compiling expression:
> In procedure dlopen: file "guile-readline.dll", message "No such file
> or directory"
>
> Seems as if version number 0 got attached:
>
> $ ls -1 /usr/lib/guile/3.0/extensions/
> guile-readline.la
> guile-readline-0.dll
>
> C:\cygwin64\lib\guile\3.0\exte
> nsions> dir /B
> guile-readline-0.dll
> guile-readline.la
>
> ================
> Makeshift fix
>
> Create symlink (as Admin):
>
> C:\cygwin64\lib\guile\3.0\extensions> mklink guile-readline.dll
> guile-readline-0.dll
> symbolic link created for guile-readline.dll <<===>> guile-readline-0.dll
>
> $ guile -q
> scheme@(guile-user)> (use-modules (ice-9 readline))
> scheme@(guile-user)> (activate-readline)
As these appear to be generated during package config or build, this should be
handled during package config, build, install, or postinstall, perhaps using
alternatives.
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: libguile package | dlopen: no such file: guile-readline.dll
2024-01-06 9:28 ` Brian Inglis
@ 2024-01-06 9:43 ` marco atzeri
2024-01-06 14:05 ` Mike Gran
0 siblings, 1 reply; 5+ messages in thread
From: marco atzeri @ 2024-01-06 9:43 UTC (permalink / raw)
To: The Cygwin Mailing List
[-- Attachment #1: Type: text/plain, Size: 1513 bytes --]
On Sat, 6 Jan 2024, 10:28 Brian Inglis via Cygwin, wrote:
> On 2024-01-05 18:07, asebian via Cygwin wrote:
> > package: liguile3.0_1
> > version: 3.0.9-2
> >
> > ================
> > Problem
> >
> > Loading the ice-9/readline module coming with libguile raises an error:
> >
> > $ guile -q
> > scheme@(guile-user)> (use-modules (ice-9 readline))
> > While compiling expression:
> > In procedure dlopen: file "guile-readline.dll", message "No such file
> > or directory"
> >
> > Seems as if version number 0 got attached:
> >
> > $ ls -1 /usr/lib/guile/3.0/extensions/
> > guile-readline.la
> > guile-readline-0.dll
> >
> > C:\cygwin64\lib\guile\3.0\exte
> > nsions> dir /B
> > guile-readline-0.dll
> > guile-readline.la
> >
> > ================
> > Makeshift fix
> >
> > Create symlink (as Admin):
> >
> > C:\cygwin64\lib\guile\3.0\extensions> mklink guile-readline.dll
> > guile-readline-0.dll
> > symbolic link created for guile-readline.dll <<===>> guile-readline-0.dll
> >
> > $ guile -q
> > scheme@(guile-user)> (use-modules (ice-9 readline))
> > scheme@(guile-user)> (activate-readline)
>
> As these appear to be generated during package config or build, this
> should be
> handled during package config, build, install, or postinstall, perhaps
> using
> alternatives.
>
Alternatives today can not be used as does not handle dll's only exe and
script
Mklink could be a possible general approch in alternatives for handling
dll.
With some file system limitation
I will look on the guile issue next week
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: libguile package | dlopen: no such file: guile-readline.dll
2024-01-06 9:43 ` marco atzeri
@ 2024-01-06 14:05 ` Mike Gran
2024-01-10 20:58 ` Marco Atzeri
0 siblings, 1 reply; 5+ messages in thread
From: Mike Gran @ 2024-01-06 14:05 UTC (permalink / raw)
To: The Cygwin Mailing List, marco atzeri
>On Saturday, January 6, 2024 at 01:45:09 AM PST, marco atzeri via Cygwin <cygwin@cygwin.com> wrote:
>On Sat, 6 Jan 2024, 10:28 Brian Inglis via Cygwin, wrote:
>> On 2024-01-05 18:07, asebian via Cygwin wrote:
>> > package: liguile3.0_1
>> > version: 3.0.9-2
>> >
>> > ================
>> > Problem
>> >
>> > Loading the ice-9/readline module coming with libguile raises an error:
>> >
>> > $ guile -q
>> > scheme@(guile-user)> (use-modules (ice-9 readline))
>> > While compiling expression:
>> > In procedure dlopen: file "guile-readline.dll", message "No such file
>> > or directory"
> >
>> > Seems as if version number 0 got attached:
>> >
>> > $ ls -1 /usr/lib/guile/3.0/extensions/
>> > guile-readline.la
>> > guile-readline-0.dll
>> >
>> > C:\cygwin64\lib\guile\3.0\exte
>> > nsions> dir /B
>> > guile-readline-0.dll
>> > guile-readline.la
>> >
>> > ================
>> > Makeshift fix
>> >
>> > Create symlink (as Admin):
>> >
>> > C:\cygwin64\lib\guile\3.0\extensions> mklink guile-readline.dll
>> > guile-readline-0.dll
>> > symbolic link created for guile-readline.dll <<===>> guile-readline-0.dll
>> >
>> > $ guile -q
>> > scheme@(guile-user)> (use-modules (ice-9 readline))
>> > scheme@(guile-user)> (activate-readline)
>>
>> As these appear to be generated during package config or build, this
>> should be
>> handled during package config, build, install, or postinstall, perhaps
>> using
>> alternatives.
>>
>Alternatives today can not be used as does not handle dll's only exe and
>script
>Mklink could be a possible general approch in alternatives for handling
>dll.
>With some file system limitation
> will look on the guile issue next week
This is a known regression in Guile itself. Bug #64723. Guile used to use libltdl to
do dynamic linking, and libltdl would search for dlls that had
major version numbers attached, such as 'guile-readline0.dll'
Guile replaced libltdl with internal code, which no longer handles
dlls with major version numbers attached. A patch was proposed
but has not made it into the main tree to restore major version
number handling in Dlls.
I keep my own version of the patch in my fork: here.
github.com/spk121/guile/commit/ddcdfe0db957a8231deb8e8ee70a7aec6307acd9
Another workaround would be to add the "-avoid-version" flag to LDFLAGS for
guile-readline
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: libguile package | dlopen: no such file: guile-readline.dll
2024-01-06 14:05 ` Mike Gran
@ 2024-01-10 20:58 ` Marco Atzeri
0 siblings, 0 replies; 5+ messages in thread
From: Marco Atzeri @ 2024-01-10 20:58 UTC (permalink / raw)
To: Mike Gran, The Cygwin Mailing List
On 06/01/2024 15:05, Mike Gran wrote:
>> On Saturday, January 6, 2024 at 01:45:09 AM PST, marco atzeri via Cygwin wrote:
>> On Sat, 6 Jan 2024, 10:28 Brian Inglis via Cygwin, wrote:
>
>>> On 2024-01-05 18:07, asebian via Cygwin wrote:
>>>> package: liguile3.0_1
>>>> version: 3.0.9-2
>>>>
>>>> ================
>>>> Problem
>>>>
>>>> Loading the ice-9/readline module coming with libguile raises an error:
>>>>
>>>> $ guile -q
>>>> scheme@(guile-user)> (use-modules (ice-9 readline))
>>>> While compiling expression:
>>>> In procedure dlopen: file "guile-readline.dll", message "No such file
>>>> or directory"
>>>
>
>> will look on the guile issue next week
>
> This is a known regression in Guile itself. Bug #64723. Guile used to use libltdl to
> do dynamic linking, and libltdl would search for dlls that had
> major version numbers attached, such as 'guile-readline0.dll'
>
> Guile replaced libltdl with internal code, which no longer handles
> dlls with major version numbers attached. A patch was proposed
> but has not made it into the main tree to restore major version
> number handling in Dlls.
>
> I keep my own version of the patch in my fork: here.
>
> github.com/spk121/guile/commit/ddcdfe0db957a8231deb8e8ee70a7aec6307acd9
>
> Another workaround would be to add the "-avoid-version" flag to LDFLAGS for
> guile-readline
Thanks for the patch
with it
$ cygcheck -cd guile3.0
Cygwin Package Information
Package Version
guile3.0 3.0.9-3
$ guile -q
GNU Guile 3.0.9
..
scheme@(guile-user)> (use-modules (ice-9 readline))
scheme@(guile-user)>
Regards
Marco
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-01-10 20:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-06 1:07 libguile package | dlopen: no such file: guile-readline.dll asebian
2024-01-06 9:28 ` Brian Inglis
2024-01-06 9:43 ` marco atzeri
2024-01-06 14:05 ` Mike Gran
2024-01-10 20:58 ` Marco Atzeri
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).