bug-guix
[Top][All Lists]
Advanced

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

bug#42947: Chez Scheme libraries are broken


From: Martin Becze
Subject: bug#42947: Chez Scheme libraries are broken
Date: Mon, 31 Aug 2020 11:53:24 -0500

> This is creating an empty directory, right?  Are you sure this helps?

Yes, I think it solves the problem. On line 92 of the package definition we have

```
(native-search-paths
     (list (search-path-specification
            (variable "CHEZSCHEMELIBDIRS")
            (files (list (string-append "lib/csv" version "-site"))))))
```
search-path-specification won't set the environmental variable unless the folder already exists. Note lib/csv<version> does exist at this point but most libraries seem to want to live lib/csv<version>-site.

On 8/28/20 8:22 AM, Ludovic Courtès wrote:
Hi Martin,

Martin Becze <mjbecze@riseup.net> skribis:

Chez Scheme libraries are broken. For example `guix environment --ad-hoc
chez-scheme chez-fmt`. chez-fmt will not install (for me) because it is
dependent on chez-srfi and chez-scheme seem unable to locate it.

I think it is because CHEZSCHEMELIBDIRS is not being set. But I'm not
sure why that is happening. The chez-scheme package includes the following


```
(native-search-paths
       (list (search-path-specification
             (variable "CHEZSCHEMELIBDIRS")
             (files (list (string-append "lib/csv" version "-site"))))))
```
Which I think should set it.

-Martin

Martin Becze <mjbecze@riseup.net> skribis:

By default chez-scheme seems to be using lib/csv<version> for libaries. This
creates the directory lib/csv<version>-site which the scheme libary packages
expect.

* gnu/packages/chez.scm (chez-scheme): Create libary directory.
---
  gnu/packages/chez.scm | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm
index b80421d3f7..bb584696ae 100644
--- a/gnu/packages/chez.scm
+++ b/gnu/packages/chez.scm
@@ -194,6 +194,8 @@
                      (bin (string-append out "/bin"))
                      (lib (string-append out "/lib"))
                      (name "chez-scheme"))
+               ;; create the folder for libary installation
+               (mkdir (string-append lib "/csv" ,version "-site"))

This is creating an empty directory, right?  Are you sure this helps?

Isn’t the problem that packages like chez-fmt install libraries in
‘csv-site’ instead of ‘csv1.2.3-site’?

--8<---------------cut here---------------start------------->8---
$ find $(./pre-inst-env  guix build chez-fmt)
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/lib
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/lib/csv-site
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/lib/csv-site/fmt-js.so
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/lib/csv-site/fmt-c.so
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/lib/csv-site/fmt.so
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share/doc
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share/doc/chez-fmt-0.8.11
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share/doc/chez-fmt-0.8.11/fmt.css
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share/doc/chez-fmt-0.8.11/README
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share/doc/chez-fmt-0.8.11/fmt.html
/gnu/store/qr8mgphbivlqbdmn355kps2cxlmi679d-chez-fmt-0.8.11/share/doc/chez-fmt-0.8.11/VERSION
--8<---------------cut here---------------end--------------->8---

Thanks,
Ludo’.







reply via email to

[Prev in Thread] Current Thread [Next in Thread]