all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Vicente Eduardo <vic798@gmail.com>
To: Brett Gilio <brettg@posteo.net>
Cc: 38500@debbugs.gnu.org
Subject: bug#38500: Ruby is built against libruby-static.a
Date: Sun, 8 Dec 2019 15:49:56 +0100	[thread overview]
Message-ID: <CAOUKKgHeQ2ZV7u3S_CuZe4dgrJSyMWrXrP5fpieOHuhXBcRSMQ@mail.gmail.com> (raw)
In-Reply-To: <CAOUKKgHKMFhy-S6Xyo7XwLPQwoHkXD=TbeCTV3E6yjEF0R_2oA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2512 bytes --]

I have checked the flags needed for compiling dynamically.

It should be very easy to solve, just by adding this flag to the configure:

--enable-shared

This should be enough to compile Ruby runtime dynamic library and to
compile Ruby interpeter executable against this lib.

Reference:
https://github.com/ruby/ruby/blob/0d63a2104777e467568a31037a6573e1879870c7/configure.ac#L3136


El dom., 8 dic. 2019 15:44, Vicente Eduardo <vic798@gmail.com> escribió:

> Python and Ruby link dynamically by default from the executable of the
> runtime to the runtime library. Most runtimes do that, it is a good design
> that allows reusing the runtime to the embedders. As exception of NodeJS
> which avoids this because of a design decision related to the distribution,
> and because it hasn't got an embedding API and an stable extension API
> (N-API) until 8.x, and Rust, due to lack of ABI stability.
>
> I didn't check GHC and Java yet, but most languages that have extension
> and mainly embedding API do that (JVM has embedding and extension API).
>
> I am not an expert about Guile but I can  check the configure/Makefile of
> Ruby in order to see what flags do it need to compile against the dynamic
> library, and providing the static too as Debian distribution does for Ruby
> (or Guix itself for Python and libpython3.7m.so).
>
> El sáb., 7 dic. 2019 17:44, Brett Gilio <brettg@posteo.net> escribió:
>
>> Vicente Eduardo <vic798@gmail.com> writes:
>>
>> > I would like to have two versions, or at least the dynamic one, that's
>> the common way
>> > Ruby should be built, and also the Guixy style.
>>
>> This actually brings up a rather interesting point. What is the Guix
>> protocol on compilation for dynamic vs statically linked interpreters?
>> This is a prevalent issue not just for Ruby, but for also how we handle
>> GHC, Rust, JDK, and so on.
>>
>> Generally, I think we dynamically link most objects. _BUT_, I could be
>> missing part of the story here. So I am going to wait for the higher
>> powers that be to respond.
>>
>> In the mean time, when I get a moment, I will do some auditing on this
>> package to see if the issue is just that we are missing some compilation
>> procedure. Hopefully it is just as simple as that, but I still think the
>> issue of linkage style (dynamic vs static linkage) remains prevalent.
>>
>> Hopefully we hear some noise on this soon.
>>
>> --
>> Brett M. Gilio
>> https://git.sr.ht/~brettgilio/
>>
>

[-- Attachment #2: Type: text/html, Size: 3708 bytes --]

  reply	other threads:[~2019-12-08 14:51 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-05 13:25 bug#38500: Ruby is built against libruby-static.a Vicente Eduardo
2019-12-07 16:44 ` Brett Gilio
2019-12-08 14:44   ` Vicente Eduardo
2019-12-08 14:49     ` Vicente Eduardo [this message]
2019-12-08 15:42   ` Tobias Geerinckx-Rice via Bug reports for GNU Guix
2019-12-09 18:33     ` Brett Gilio
2019-12-09 20:57       ` Brett Gilio
2019-12-13  3:51       ` Brett Gilio

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAOUKKgHeQ2ZV7u3S_CuZe4dgrJSyMWrXrP5fpieOHuhXBcRSMQ@mail.gmail.com \
    --to=vic798@gmail.com \
    --cc=38500@debbugs.gnu.org \
    --cc=brettg@posteo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.