Re: CHICKEN 6 and win32 support

Anton Idukov via Chicken-hackers <[email protected]>
Newsgroups gmane.lisp.scheme.chicken.devel,gmane.lisp.scheme.chicken
Message-ID <CAMJCnqUt7_od04EwTsoK+cwHQhXNpEN7BQQ2Ym2CX7B=ZZ3mhg@mail.gmail.com>
bit one Q/ in FFI API manual we have info: "
C_c_string <https://wiki.call-cc.org/man/6/C%20interface#c_c_string>

[C function] char* C_c_string (C_word string)


These macros and functions can be used to convert Scheme data objects back
to C data. Note that C_c_string() returns a pointer to the character buffer
of the actual Scheme object and is not zero-terminated."

but in runtime.c:11973+ we have
11973   C_char *topname = (C_char *)C_c_string(entry);
11974   C_char *mname = (C_char *)C_c_string(name);
11975   C_char *tmp;
11976   int tmp_len = 0;
11977
11978   if((handle = C_dlopen(mname, dlopen_flags)) != NULL) {
11979     if((p = C_dlsym(handle, topname)) == NULL) {
...
like  C_c_string returns zero terminated strings we pass strat to C_dlopen,
C_dlsym...
And CSI is not loading shared .so on msys2. questionable?


пн, 23 июн. 2025 г. в 21:56, Anton Idukov <[email protected]>:

> Maybe this strange behavior of C6pre on MSYS2 *  is a consequence of what
> Felix said before: " Make sure you update to the newest CHICKEN 6 version
> from git. We made
> some user-visible changes to the process API from (chicken process) and
> CRUNCH uses this API. "   from the CRUNCH testing mail branch?
>
> PS. strange behavior of the C6pre on my windows laptop: 1) When I import
> my separate module .so into my main.scm and compile just by csc6 main.scm,
> resulted process 'main' silently ends after start. 2) I cannot build a
> static module version, the compiler barks when it makes an object file of a
> module. 3) But I can make a static one-file executable. 4) Which way slower
> ~10x runs on msys, against the linux version.
> PPS. Windows OS is not super comfortable, side note.
>
> вс, 22 июн. 2025 г. в 12:35, Anton Idukov <[email protected]>:
>
>> make check .... Error 127.      This is  [MSYS2 UCRT64 environment].  For
>> note, good old chicken-5.4.0 not even built on this msys2
>>
>> вс, 22 июн. 2025 г., 11:27 <[email protected]>:
>>
>>> > Hi! On my linux Wine is not installs msys (process sits in memory with
>>> 99%
>>> > cpu), so I unpack fresh chip laptop with latest win11 and install
>>> MSYS2 and
>>> > next install gcc and git, what's the next steps?  (I develop some c
>>> code on
>>> > windows about 4 years ago)
>>>
>>> You'll need w64devkit (see the CHICKEN README for information) and
>>> a distribution tarball with the newest changes, which can be found here:
>>>
>>>
>>> http://www.call-with-current-continuation.org/chicken-6-prelim.tar.gz
>>>
>>> If you unpack the archive and build it, you will get a "chicken.exe"
>>> binary that you can then use to bootstrap the system from the
>>> git sources. If you then run "make check" you will quickly run into
>>> errors and can then continue to investigate.
>>>
>>> Your help is much appreciated! Please ask, if there are any questions.
>>>
>>>
>>> felix
>>>
>>>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.