guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guile, Guix, and C extensions


From: Stephen Scheck
Subject: Re: Guile, Guix, and C extensions
Date: Fri, 3 Apr 2020 18:09:05 -0400

> Oh, pity.  I can’t help without seeing the code, I’m afraid.

You won't be able to try and reproduce - but at the moment that's a lesser
concern of mine
(you can still see that the module definition itself isn't doing anything
special or unexpected,
but nonetheless, I'll work on getting some code into a form I can post
publicly).

Here's what `pkg-config` shows for the Guile package in my working profile:

    root@guix /# pkg-config guile-2.2 --variable=sitedir

/gnu/store/jgl9d4axpavsv83z2f1z1himnkbsxxqj-guile-2.2.7/share/guile/site/2.2
    root@guix /# pkg-config guile-2.2 --variable=siteccachedir

/gnu/store/jgl9d4axpavsv83z2f1z1himnkbsxxqj-guile-2.2.7/lib/guile/2.2/site-ccache
    root@guix /# pkg-config guile-2.2 --variable=extensiondir

/gnu/store/jgl9d4axpavsv83z2f1z1himnkbsxxqj-guile-2.2.7/lib/guile/2.2/extensions

Even without the seeming bug of it trying to install into the wrong Guile
package store directory -
if it tried to install into the above locations, it would still fail for
the same reason. So it seems
that the `GUILE_SITE_DIR` Autoconf macro isn't useful as things currently
stand with Guix
and the Guile package definition.

Which still begs the question - *what* should a C extension do (i.e. how
should it organize the
installation files it produces), and what should the Guile Guix package
definition itself do? Should the
Guile Guix package build and install itself in such a way that `pkg-config`
reports locations in the
working profile directory instead of its package store directory, as I
mentioned in my initial post,
like so ... ?

    <install-profile>/lib/guile/<guile-version>/site-ccache
    <install-profile>/lib/guile/<guile-version>/extensions
    <install-profile>/share/guile/site/<guile-version>

And if not, then what ... ?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]