[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db han
From: |
Mark Fisher |
Subject: |
Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging |
Date: |
Tue, 31 Aug 2021 19:13:04 +0100 |
> Could you give 5.3.0rc2 a quick spin? In it, we've simply
> dropped the custom implementation of opendir and readdir.
Sure thing. Looks good.
Sorry it's taken a while to respond, but I wanted to do some thorough tests.
TL,DR;
It's not crashing any more
I can install eggs, and use them.
I tried:
1. compiling and installing in an MSYS2/MinGW64 shell
2. compiling and installing in a windows CMD shell with MSYS2/MinGW64 paths
3. compiling and installing in a windows CMD shell with chocolatey
make/gcc on the path
All of them worked.
However, of note was the ones with MSYS2/MinGW64 binaries on the path
created versions that make eggs think they should use "cp" instead of
"xcopy" in thier install bat files. (I think this is to do with
C_TARGET_INSTALL_PROGRAM)
For example, this version was the output from (2) above:
> set PATH=c:\chicken\bin;%PATH%
> chicken-install srfi-1 # i'd already compiled this in another shell
building srfi-1
installing srfi-1
A subdirectory or file C:\chicken\lib\chicken\11 already exists.
'cp' is not recognized as an internal or external command
- - - - -
In srfi-1.install.bat:
- - - 8< - - -
@echo off
cd /d "C:\Users\markj\AppData\Local\chicken-install\srfi-1"
mkdir %DESTDIR%"C:\chicken\lib\chicken\11"
cp -r "C:\Users\markj\AppData\Local\chicken-install\srfi-1\srfi-1.static.obj"
%DESTDIR%"C:\chicken\lib\chicken\11\srfi-1.obj"
cp -r "C:\Users\markj\AppData\Local\chicken-install\srfi-1\srfi-1.link"
%DESTDIR%"C:\chicken\lib\chicken\11\srfi-1.link"
if errorlevel 1 exit /b 1
... etc.
- - -
But building with option (3) is giving:
- - - 8< - - -
@echo off
cd /d "C:\Users\markj\AppData\Local\chicken-install\srfi-1"
mkdir %DESTDIR%"C:\chicken\lib\chicken\11"
copy /Y "C:\Users\markj\AppData\Local\chicken-install\srfi-1\srfi-1.static.obj"
%DESTDIR%"C:\chicken\lib\chicken\11\srfi-1.obj"
copy /Y "C:\Users\markj\AppData\Local\chicken-install\srfi-1\srfi-1.link"
%DESTDIR%"C:\chicken\lib\chicken\11\srfi-1.link"
if errorlevel 1 exit /b 1
... etc
- - -
Using option 3:
Compilation test with uri-common egg:
==============
;;; uri-test.scm
(import uri-common)
(print (uri->string (update-uri (uri-reference "") path: '("example"
"greeting") query: '((hi . "there")))))
> csc uri-test.scm
> uri-test.exe
example/greeting?hi=there
Interactive test
=============
C:\Users\markj>csi
CHICKEN
(c) 2008-2021, The CHICKEN Team
(c) 2000-2007, Felix L. Winkelmann
Version 5.3.0rc2 ((HEAD detached at 5.3.0rc2)) (rev 12bb5c31)
mingw32-windows-gnu-x86-64 [ 64bit dload ptables ]
Type ,? for help.
#;1> (import uri-common)
; loading C:/chicken/lib/chicken/11/uri-common.import.so ...
; loading C:/chicken/lib/chicken/11/uri-common.so ...
; loading C:/chicken/lib/chicken/11/srfi-1.so ...
; loading C:/chicken/lib/chicken/11/srfi-13.so ...
; loading C:/chicken/lib/chicken/11/srfi-14.so ...
; loading C:/chicken/lib/chicken/11/defstruct.so ...
; loading C:/chicken/lib/chicken/11/matchable.so ...
; loading C:/chicken/lib/chicken/11/uri-generic.so ...
#;2> (uri->string (update-uri (uri-reference "") path: '("example"
"greeting") query: '((hi . "there"))))
"example/greeting?hi=there"
#;3>
So I think that installing from a MSYS2/MinGW64 shell is still not
quite working correctly, but it appears to be spot on using chocolatey
with msys2/make installed.
Also, one other problem I have is that non of the binaries I created
have a chicken-install that works in a MSYS2/MinGW64 shell
- - - 8< - - -
$ chicken-install test
fetching test
'xcopy' is not recognized as an internal or external command,
operable program or batch file.
Error: (open-input-file) cannot open file - No such file or directory:
"C:\\Users\\markj\\AppData\\Local\\chicken-install\\test\\test.egg"
- - -
So it seems with chocolatey on my path its build seemed to make
everything fully "windows", whereas with MSYS2/MinGW64 on the path it
was slightly unixy (cp instead of xcopy, but still referring to
C:\\Users\\markj\\AppData etc).
Option (2) did mostly work though as a solution without chocolatey,
but only because unix style binaries were on the path.
mark
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, (continued)
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Jani Hakala, 2021/08/24
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Mark Fisher, 2021/08/25
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Mark Fisher, 2021/08/25
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Peter Bex, 2021/08/26
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Mark Fisher, 2021/08/26
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Peter Bex, 2021/08/26
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Mark Fisher, 2021/08/26
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Mark Fisher, 2021/08/27
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging, Peter Bex, 2021/08/31
- Re: Installing Chicken 5.2.0 on Windows - chicken-install -update-db hanging,
Mark Fisher <=