opam-repository icon indicating copy to clipboard operation
opam-repository copied to clipboard

Package guile.1.0

Open kiranandcode opened this issue 3 years ago • 7 comments

guile.1.0

Bindings to GNU Guile Scheme for OCaml The guile library is Free Software high-level OCaml bindings to GNU Guile 3.0, supporting easy interop between OCaml and GNU Guile Scheme.


  • Homepage: https://github.com/gopiandcode/guile-ocaml
  • Source repo: git+https://github.com/gopiandcode/guile-ocaml.git
  • Bug tracker: https://github.com/gopiandcode/guile-ocaml/issues

:camel: Pull-request generated by opam-publish v2.1.0

kiranandcode avatar Jun 25 '22 07:06 kiranandcode

I feel like a conf-guile package is needed to make sure that users have Guile installed on their system, but I'm not sure how to set that up? On debian, this is done using sudo apt install guile-3.0-dev, but I'm not sure what the process for adding such a package to the opam repository is - should I just extend this PR with an additional package that defines conf-guile?

kiranandcode avatar Jun 25 '22 07:06 kiranandcode

Up to you as to whether to add conf-guile to this PR or to open a separate one. The package itself would just be conf-guile.1 - the easiest thing is to start off copying an existing one which is close (I just happened to land on, say, conf-sqlite3). It's handy if you can look-up the package names for the distros which opam-ci tests (alpine, arch, debian/ubuntu, fedora/opensuse/oraclelinux).

(The package is also missing a dependency on stdio)

dra27 avatar Jun 26 '22 19:06 dra27

Perfect, thanks for the pointers! I'll update the PR with conf-guile package as well. Also, will update to add the dependency on stdio.

kiranandcode avatar Jun 27 '22 04:06 kiranandcode

I've added a conf-guile package, and made the guile package depend on conf-guile. It seems the thing builds now properly for debian/ubuntu, but fails on rhel,fedora,centos and alpine. I think it might be because of the pkg-config in some cases? I'm not really familiar with these distributions - does anyone know what I might be doing wrong? Thanks.

kiranandcode avatar Jul 12 '22 01:07 kiranandcode

Somehow you are not including the path to gmp.h, the invocation goes as /usr/bin/gcc -I/usr/include/guile/3.0 -I/usr ... but you need also a -I/usr/include/ for gmp used by guile (and that -I/usr is really weird)

mseri avatar Aug 04 '22 09:08 mseri

Another failure in the CI is that some distributions install guile2

mseri avatar Aug 04 '22 09:08 mseri

Thank you @mseri very much for having a look!

Somehow you are not including the path to gmp.h, the invocation goes as /usr/bin/gcc -I/usr/include/guile/3.0 -I/usr ... but you need also a -I/usr/include/ for gmp used by guile

Ah yes, I think I was missing the -I/usr/include for my default configuration. I have updated the package with the appropriate include flags at least.

(and that -I/usr is really weird)

Hmm, not sure where that is coming from though. I'm fairly certain I'm not including -I/usr: https://github.com/Gopiandcode/guile-ocaml/blob/274d59b5dcc45cdb1a4e0991f90267979fa6000a/config/discover.ml#L35

Another failure in the CI is that some distributions install guile2

Ah, sorry my bad. Maybe I got the package names mixed up.

Thanks again for your time and for the pointers - I'll go through and double check the points you suggested and see if I can try and get the CI passing! Thanks!

kiranandcode avatar Aug 05 '22 08:08 kiranandcode

Thanks, sorry for the delay. Could you return the fix to the opam file upstream so that it can be taken into account for next time?

kit-ty-kate avatar Aug 26 '22 12:08 kit-ty-kate

@kit-ty-kate , thank you so much for fixing the package! Sorry for the issues with the package, I just could not get the package to build on the other operating systems and had given up hope - in fact, I was just about to post on the OCaml discuss asking for help, and it was only when I came back to grab a link to this repo I realised it had already been fixed! Thanks!

kiranandcode avatar Aug 29 '22 03:08 kiranandcode