SRFI library name mapping does not work with MSYS2/Cygwin and Chez Scheme
After creating a new project, akku install
fails while linking ../:0/cond-expand.chezscheme.sls
to .akku/lib/
.
Using Akku 0.5.1 on a fresh MSYS2 (64-bit).
Log:
$ akku init new_project
[info] Adding chez-srfi@>=0.0.0-akku <1.0.0 to new_project/Akku.manifest...
[info] Created a draft manifest in new_project/Akku.manifest
To start developing in the new project, type this in your shell:
cd new_project
akku install
.akku/env
The programs will work out of the box if Chez Scheme is installed. Other
implementations may require small adjustments to run R6RS programs (e.g.
guile -x .guile.sls -x .sls). See the manual for your implementation.
$ cd new_project/
$ akku install
[info] Locked chez-srfi v0.0.0-akku.82.daf5ebd
[info] Wrote Akku.lock
[info] Fetching chez-srfi
Cloning into '.akku/src/chez-srfi'...
remote: Enumerating objects: 17, done.
remote: Counting objects: 100% (17/17), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 925 (delta 4), reused 11 (delta 4), pack-reused 908
Receiving objects: 100% (925/925), 724.51 KiB | 884.00 KiB/s, done.
Resolving deltas: 100% (387/387), done.
[info] Fetched revision daf5ebd67ef36fd2388d6a62e278ba8d04b11abf
[info] Installing chez-srfi
Backtrace:
17 (apply-smob/1 #<catch-closure 600209180>)
In ice-9/boot-9.scm:
705:2 16 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
619:8 15 (_ #(#(#<directory (guile-user) 6001df140>)))
In ice-9/boot-9.scm:
2312:4 14 (save-module-excursion _)
3832:12 13 (_)
In /home/Judah/.akku/bin/akku.sps:
183:11 12 (cmd-install _)
In akku/lib/install.sls:
1044:45 11 (install _ "Akku.manifest")
In srfi/srfi-1.scm:
592:17 10 (map1 (#<r6rs:record:project>))
In akku/lib/install.sls:
1044:45 9 (_ #<r6rs:record:project>)
731:32 8 (install-project _ #f)
In srfi/srfi-1.scm:
592:29 7 (map1 (#<r6rs:record:r6rs-library> #<r6rs:record:r6r…> …))
592:17 6 (map1 (#<r6rs:record:r6rs-library> #<r6rs:record:r6r…> …))
In akku/lib/install.sls:
763:18 5 (_ #<r6rs:record:r6rs-library>)
443:0 4 (make-alias-symlinks ".akku/lib/srfi/:0/cond-expand.ch…" …)
In srfi/srfi-1.scm:
592:17 3 (map1 (("srfi/%3a0" . "cond-expand.ikarus.sls") (. #) …))
In akku/lib/install.sls:
433:53 2 (symlink-file ".akku/lib/srfi/%3a0" _ _)
In akku/lib/utils.sls:
180:52 1 (symlink/relative _ _ _)
In unknown file:
0 (symlink "../:0/cond-expand.chezscheme.sls" ".akku/lib/…")
ERROR: In procedure symlink:
In procedure symlink: No such file or directory
Tree of .akku/lib
directory:
.akku/lib/
└── srfi
├── %3a0
├── :0
│ └── cond-expand.chezscheme.sls
└── srfi-0.guile.sls
Tree of .akku/src
directory:
.akku/src/
└── chez-srfi
├── %3a0
│ ├── cond-expand.guile.sls
│ └── cond-expand.sls
├── %3a0.sls
├── %3a1
│ ├── lists.sls
│ └── srfi-1-reference.scm
├── %3a1.sls
├── %3a11
│ └── let-values.sls
├── %3a11.sls
├── %3a115
│ ├── regexp
│ │ ├── boundary.sls
│ │ └── boundary-impl.scm
│ ├── regexp.sls
│ └── regexp-impl.scm
├── %3a115.sls
├── %3a117
│ ├── list-queues.sls
│ └── list-queues-impl.scm
├── %3a117.sls
├── %3a125
│ ├── 125.body.scm
│ └── hashtables.sls
├── %3a125.sls
├── %3a126
│ ├── 126.body.scm
│ ├── helpers
│ │ ├── helpers.chezscheme.sls
│ │ └── helpers.sls
│ └── r6rs-hashtables.sls
├── %3a126.sls
├── %3a127
│ ├── lazy-sequences.sls
│ └── lseqs-impl.scm
├── %3a127.sls
├── %3a128
│ ├── 128.body1.scm
│ ├── 128.body2.scm
│ └── comparators.sls
├── %3a128.sls
├── %3a129
│ ├── titlecase.sls
│ ├── titlecase-impl.scm
│ └── titlemaps.scm
├── %3a129.sls
├── %3a13
│ ├── srfi-13.scm
│ └── strings.sls
├── %3a13.sls
├── %3a130
│ ├── 130.body.scm
│ └── string-cursors.sls
├── %3a130.sls
├── %3a131
│ └── records.sls
├── %3a131.sls
├── %3a132
│ ├── delndups.scm
│ ├── lmsort.scm
│ ├── median.scm
│ ├── merge.scm
│ ├── select.scm
│ ├── sort.scm
│ ├── sortfaster.scm
│ ├── sorting.sls
│ ├── sorting-test.scm
│ ├── sortp.scm
│ ├── vbinsearch.scm
│ ├── vector-util.scm
│ ├── vhsort.scm
│ ├── visort.scm
│ ├── vmsort.scm
│ ├── vqsort2.scm
│ └── vqsort3.scm
├── %3a132.sls
├── %3a133
│ ├── vectors.sls
│ ├── vectors.sls3a132.sls
│ └── vectors-impl.scm
├── %3a133.sls
├── %3a14
│ ├── char-sets
│ │ ├── inversion-list.sls
│ │ ├── inversion-list-check.scm
│ │ └── inversion-list-impl.scm
│ ├── char-sets.sls
│ ├── COPYING
│ ├── srfi-14.scm
│ ├── srfi-14-base-char-sets.scm
│ ├── srfi-14-char-sets.scm
│ ├── srfi-14-check.scm
│ └── unicode-data.scm
├── %3a14.sls
├── %3a141
│ ├── integer-division.sls
│ └── srfi-141-impl.scm
├── %3a141.sls
├── %3a143
│ ├── fixnums.sls
│ └── helpers
│ ├── helpers.chezscheme.sls
│ └── helpers.sls
├── %3a143.sls
├── %3a145
│ ├── assumptions.chezscheme.sls
│ └── assumptions.sls
├── %3a145.sls
├── %3a151
│ └── bitwise-operations.sls
├── %3a151.sls
├── %3a152
│ ├── extend-comparisons.scm
│ ├── macros.scm
│ ├── portable.scm
│ ├── r7rs-shim.scm
│ └── strings.sls
├── %3a152.sls
├── %3a156
│ ├── predicate-combiners.sls
│ └── srfi-156-impl.scm
├── %3a156.sls
├── %3a158
│ ├── generators-and-accumulators.sls
│ └── srfi-158-impl.scm
├── %3a158.sls
├── %3a16
│ └── case-lambda.sls
├── %3a16.sls
├── %3a17
│ ├── generalized-set%21.chezscheme.sls
│ ├── helpers.chezscheme.sls
│ └── helpers.sls
├── %3a17.sls
├── %3a19
│ ├── srfi-19.scm
│ ├── srfi-19-test-suite.scm
│ ├── time
│ │ ├── compat.chezscheme.sls
│ │ ├── compat.ikarus.sls
│ │ ├── compat.larceny.sls
│ │ ├── compat.mzscheme.sls
│ │ ├── compat.ypsilon.sls
│ │ └── not-implemented.sls
│ └── time.sls
├── %3a19.sls
├── %3a2
│ └── and-let%2a.sls
├── %3a2.sls
├── %3a23
│ ├── error
│ │ └── tricks.sls
│ └── error.sls
├── %3a23.sls
├── %3a25
│ ├── arlib.scm
│ ├── array.scm
│ ├── ix-ctor.scm
│ ├── list.scm
│ ├── multi-dimensional-arrays
│ │ ├── all.sls
│ │ └── arlib.sls
│ ├── multi-dimensional-arrays.sls
│ ├── op-ctor.scm
│ └── test.scm
├── %3a25.sls
├── %3a26
│ ├── check.scm
│ ├── cut.sls
│ └── cut-impl.scm
├── %3a26.sls
├── %3a27
│ ├── conftest.scm
│ ├── mrg32k3a.scm
│ ├── mrg32k3a-a.scm
│ └── random-bits.sls
├── %3a27.sls
├── %3a28
│ └── basic-format-strings.sls
├── %3a28.sls
├── %3a29
│ └── localization.sls
├── %3a29.sls
├── %3a31
│ └── rec.sls
├── %3a31.sls
├── %3a34
│ └── exception-handling.sls
├── %3a34.sls
├── %3a35
│ └── conditions.sls
├── %3a35.sls
├── %3a37
│ ├── args-fold.sls
│ └── srfi-37-reference.scm
├── %3a37.sls
├── %3a38
│ ├── with-shared-structure.chezscheme.sls
│ ├── with-shared-structure.ikarus.sls
│ └── with-shared-structure.ypsilon.sls
├── %3a38.sls
├── %3a39
│ ├── parameters.chezscheme.sls
│ ├── parameters.ikarus.sls
│ ├── parameters.mzscheme.sls
│ ├── parameters.sls
│ └── parameters.ypsilon.sls
├── %3a39.sls
├── %3a4
│ └── numeric-vectors.sls
├── %3a4.sls
├── %3a41
│ ├── streams
│ │ ├── derived.sls
│ │ └── primitive.sls
│ └── streams.sls
├── %3a41.sls
├── %3a42
│ ├── eager-comprehensions.sls
│ ├── ec.scm
│ └── examples.scm
├── %3a42.sls
├── %3a43
│ ├── vector-lib.scm
│ └── vectors.sls
├── %3a43.sls
├── %3a45
│ └── lazy.sls
├── %3a45.sls
├── %3a48
│ ├── intermediate-format-strings
│ │ ├── compat.chezscheme.sls
│ │ ├── compat.guile.sls
│ │ ├── compat.ikarus.sls
│ │ ├── compat.larceny.sls
│ │ ├── compat.mzscheme.sls
│ │ └── compat.ypsilon.sls
│ └── intermediate-format-strings.sls
├── %3a48.sls
├── %3a5
│ └── let.sls
├── %3a5.sls
├── %3a51
│ ├── rest-values.sls
│ └── srfi-51-impl.scm
├── %3a51.sls
├── %3a54
│ ├── cat.sls
│ └── srfi-54-impl.scm
├── %3a54.sls
├── %3a6
│ ├── basic-string-ports
│ │ ├── compat.chezscheme.sls
│ │ ├── compat.ikarus.sls
│ │ ├── compat.larceny.sls
│ │ └── compat.ypsilon.sls
│ ├── basic-string-ports.mzscheme.sls
│ └── basic-string-ports.sls
├── %3a6.sls
├── %3a60
│ └── integer-bits.sls
├── %3a60.sls
├── %3a61
│ └── cond.sls
├── %3a61.sls
├── %3a64
│ ├── srfi-64-test.scm
│ ├── testing.sls
│ └── testing-impl.scm
├── %3a64.sls
├── %3a67
│ ├── compare.scm
│ ├── compare-procedures.sls
│ └── examples.scm
├── %3a67.sls
├── %3a69
│ └── basic-hash-tables.sls
├── %3a69.sls
├── %3a78
│ ├── check.scm
│ ├── examples.scm
│ ├── lightweight-testing
│ │ ├── compat.chezscheme.sls
│ │ ├── compat.guile.sls
│ │ ├── compat.ikarus.sls
│ │ ├── compat.larceny.sls
│ │ ├── compat.mzscheme.sls
│ │ └── compat.ypsilon.sls
│ └── lightweight-testing.sls
├── %3a78.sls
├── %3a8
│ └── receive.sls
├── %3a8.sls
├── %3a9
│ └── records.sls
├── %3a9.sls
├── %3a98
│ ├── os-environment-variables.chezscheme.sls
│ ├── os-environment-variables.ikarus.sls
│ ├── os-environment-variables.larceny.sls
│ ├── os-environment-variables.mzscheme.sls
│ └── os-environment-variables.ypsilon.sls
├── %3a98.sls
├── %3a99
│ ├── records
│ │ ├── helper.sls
│ │ ├── inspection.larceny.sls
│ │ ├── inspection.sls
│ │ ├── procedural.larceny.sls
│ │ ├── procedural.sls
│ │ ├── syntactic.larceny.sls
│ │ └── syntactic.sls
│ └── records.sls
├── %3a99.sls
├── .git
│ ├── branches
│ ├── config
│ ├── description
│ ├── FETCH_HEAD
│ ├── HEAD
│ ├── hooks
│ │ ├── applypatch-msg.sample
│ │ ├── commit-msg.sample
│ │ ├── fsmonitor-watchman.sample
│ │ ├── post-update.sample
│ │ ├── pre-applypatch.sample
│ │ ├── pre-commit.sample
│ │ ├── prepare-commit-msg.sample
│ │ ├── pre-push.sample
│ │ ├── pre-rebase.sample
│ │ ├── pre-receive.sample
│ │ └── update.sample
│ ├── index
│ ├── info
│ │ └── exclude
│ ├── logs
│ │ ├── HEAD
│ │ └── refs
│ │ ├── heads
│ │ │ └── master
│ │ └── remotes
│ │ └── origin
│ │ └── HEAD
│ ├── objects
│ │ ├── info
│ │ └── pack
│ │ ├── pack-457bb1b0511bc108d2bcf3dfb0d4f90f6ed7aab3.idx
│ │ └── pack-457bb1b0511bc108d2bcf3dfb0d4f90f6ed7aab3.pack
│ ├── packed-refs
│ └── refs
│ ├── heads
│ │ └── master
│ ├── remotes
│ │ └── origin
│ │ └── HEAD
│ └── tags
├── .gitignore
├── compile-all.ikarus.sps
├── LICENSE
├── link-dirs.chezscheme.sps
├── private
│ ├── check-arg.sls
│ ├── define-values.chezscheme.sls
│ ├── define-values.sls
│ ├── feature-cond.sls
│ ├── helpers.chezscheme.sls
│ ├── helpers.sls
│ ├── include
│ │ ├── compat.chezscheme.sls
│ │ ├── compat.guile.sls
│ │ ├── compat.ikarus.sls
│ │ ├── compat.larceny.sls
│ │ ├── compat.mzscheme.sls
│ │ └── compat.ypsilon.sls
│ ├── include.sls
│ ├── let-opt.sls
│ ├── make-aliased-libraries.sps
│ ├── OS-id-features.sls
│ ├── platform-features.chezscheme.sls
│ ├── platform-features.ikarus.sls
│ ├── platform-features.larceny.sls
│ ├── platform-features.mzscheme.sls
│ ├── platform-features.ypsilon.sls
│ ├── registry.sls
│ └── vanish.sls
├── README.md
├── README.upstream
└── tests
├── and-let%2a.sps
├── char-sets.sps
├── compare-procedures.sps
├── cut.sps
├── eager-comprehensions.sps
├── intermediate-format-strings.sps
├── lazy.sps
├── lightweight-testing.sps
├── list-queues.sps
├── lists.sps
├── multi-dimensional-arrays.sps
├── multi-dimensional-arrays--arlib.sps
├── os-environment-variables.sps
├── r6rs-hashtables.ikarus.sps
├── r6rs-hashtables.sps
├── random-bits.sps
├── rec.sps
├── records.sps
├── regexp.sps
├── tables-test.ikarus.sps
├── tables-test.sps
├── testing.sps
├── time.sps
└── vectors.sps
Edited by Gwen Weinholt