Closed Robert-Adelard closed 2 years ago
Hi,
Apple M1 is a supported platform and it should compile and install without any problem. The error message that you report is a bit strange. Something like:
$ git clone git@github.com:ciao-lang/ciao.git
$ cd ciao
$ ./ciao-boot.sh local-install
should work. If it does not, could you try this instead?
./ciao-boot.sh configure
./ciao-boot.sh build
./ciao-boot.sh install
(and attach a copy of the log messages if it still does not work)
Binary distributions for that platform are unfortunately not available in GitHub Actions (AFAIK, except for self-hosted runners).
Thank you for confirming that Apple M1 is a support platform. Unfortunately, it doesn't work for me...
$ ./ciao-boot.sh local-install
=> builder: building [boot]
compiling ciaoengine (engine for ciaoc.sta)
compiling ciao_builder (command) [using ciaoc.sta]
{Reading .../ciao/core/lib/compiler/exemaker.pl
ERROR: (lns 1-6) Module exemaker already defined in source ..../ciao/core/lib/compiler/exemaker
}
reusing ciaoengine (engine for ciao_builder)
{ERROR (ciao_builder): '.' does not look like a valid builder target.
It does not correspond to a known bundle name, a path to a bundle, or a path
to a workspace containing bundles.
Some possible reasons: the target is not reachable from CIAOROOT or CIAOPATH,
or it does not contain the ACTIVATE mark (for catalogues), or the bundle
sources are incomplete (no valid Manifest.pl?).}
If I run the configure command separately, I get the same error message from ciao_builder
:
$ ./ciao-boot.sh configure
{ERROR (ciao_builder): '.' does not look like a valid builder target.
It does not correspond to a known bundle name, a path to a bundle, or a path
to a workspace containing bundles.
Some possible reasons: the target is not reachable from CIAOROOT or CIAOPATH,
or it does not contain the ACTIVATE mark (for catalogues), or the bundle
sources are incomplete (no valid Manifest.pl?).}
That error is strange (somehow the build system is not recognizing the source tree). Are you installing from a fresh git clone? Is any of the parent directories in a symbolic link?
Yes, I'm installing from a fresh git clone, and No, none of the parent directories is a symbolic link.
Are there any debug flags I can use to generate more logging information?
There is no logging information at the required level to trace this issue. I've located a couple of places to inspect by manually adding logging code (if you are familiar with Prolog).
Some checks before:
env
command) report any CIAOROOT
or CIAOPATH
variable?Some checks before:
- does the absolute path of Ciao contain non-alphanumeric or UTF8 characters?
Aha - the parent directory was S-CASP
. Changing it to SCASP
has fixed the problem.
Thank you for your help.
Great!
Is it possible to install Ciao on a MacBook M1 or is this not a supported platform? There does not appear be a binary release available and when I try to build from source code using
ciao-boot.sh local-install
I get the error message:I did some investigation and discovered that the bootstrap had built a BOOT configuration in
build-boot/eng/ciaoengine/cfg/BOOT
that looked reasonable - however, line 806 ofbuilder/sh_src/build_car.sh
setseng_cfg=DEFAULT
rather than BOOT if$ENG_CFG
is not set. This appears to be deliberate according to aTODO
comment at line 619 that states# TODO: ENG_CFG=DEFAULT hardwired
.How can I bootstrap a new configuration for my platform?