ciao-lang / ciao

Ciao is a modern Prolog implementation that builds up from a logic-based simple kernel designed to be portable, extensible, and modular.
https://ciao-lang.org
GNU Lesser General Public License v3.0
268 stars 20 forks source link

Ciao will not compile on GUIX #79

Closed PeterPandaluki closed 6 months ago

PeterPandaluki commented 1 year ago

Has anyone managed to get ciao to install on Guix? Everytime it stalls at compilation with:

.ciaoroot/v1.22.0-m1/builder/sh_src/engine.mk:45: configure_main.o] Error 1 ERROR: Bootstrap could not be compiled!

jfmc commented 1 year ago

I'm not familiar with Guix, but probably some dependency is missing and the installation process is not reporting an informative message.

The installation requirements are the following: https://ciao-lang.org/ciao/build/doc/ciao.html/Install.html#Installing%20dependencies

Could you make sure that at least gcc, GNU make, etc. are installed?

mcsoto commented 1 year ago

Does it work on cygwin? I got the exact same error.

make: *** [/home/Computer/ciao-master/builder/sh_src/engine.mk:45: system.o] Error 1
ERROR: Bootstrap could not be compiled!

If needed, use 'emergency-clean' to recover from inconsistent build
states and try 'boot-rebuild' to build the bootstrap manually.

Full log: https://pastebin.com/jCuVjSxf

Edit: msys2 (with diffutils, gcc and make) gives the same result.

jfmc commented 1 year ago

At least for some msys2 version it seems to compile correctly, as shown in the workflow: https://github.com/ciao-lang/ciao/actions/runs/3146270599/jobs/5114529078

For running on Windows we really recommend using WSL (many 3rd party libs required by our users didn't even compile on Windows and full support of all features is a pain on that OS). Cygwin support was dropped in favor of MSYS2, in an attempt to reduce the POSIX emulation layer to a minimum.

For MSYS2, let us know your OS version and specific setup so that we can debug the problem.

KenjiTakahashi commented 1 year ago

Works fine here on GUIX in the following environment.

guix shell gcc-toolchain make
jfmc commented 6 months ago

Works fine here on GUIX in the following environment.

guix shell gcc-toolchain make

Thanks! Adding this to the installation instructions and closing the issue.