--f46d042dff2d268ff704b0ffd943
Content-Type: text/plain; charset=ISO-8859-1

 > This is a rather basic question- but for a standard compile of the ruby
> binary what external "dependencies" does it have? Is there some sort of
> associated gems directory?

As background, for 1.9.3-p0 from the RubyInstaller project we provide the
following dependencies for Windows users:

  * libyaml
  * libffi
  * openssl
  * libgdbm
  * libiconv
  * libz
  * pdcurses
  * tcl/tk
  * rb-readline (pure Ruby readline)

But depending up how you're using MRI, not all of these are currently
required.

In fact, you can successfully build a minimal MRI with none of those
dependencies. The current build process will try to configure core
extensions (fiddle, psych, tk, etc) to use the dependencies but will _not_
fail the build if those dependencies aren't found.

For example, even though you may not have `libyaml`, the build will try to
configure `psych`, warn that it can't, and complete. When you run the built
MRI, you'll most likely get a runtime warning saying you need to install
`libyaml`. However, you can (currently) still process YAML using the
unmaintained (IIRC) built-in `syck` library that was built as part of the
minimal build. I'm not sure how much longer this will continue to be true.

To answer your question, try a minimal build using something like the
following and watch the build messages as the process tries to configure
and build extensions:

  ./configure --enable-shared --disable-install-doc && make

Jon

---
http://thecodeshop.github.com | http://jonforums.github.com/
twitter: @jonforums

--f46d042dff2d268ff704b0ffd943
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

gt; This is a rather basic question- but for a standard compile of the ruby<br><div class="gmail_quote">&gt; binary what external &quot;dependencies&quot; does it have? Is there some sort of<br>&gt; associated gems directory?<br>
<br>As background, for 1.9.3-p0 from the RubyInstaller project we provide the following dependencies for Windows users:<br><br>* libyaml<br>* libffi<br>* openssl<br>* libgdbm<br>* libiconv<br>* libz<br>* pdcurses<br>
* tcl/tk<br>* rb-readline (pure Ruby readline)<br><br>But dependingp how you&#39;re using MRI, not all of these are currently required.<br><br>In fact, you can successfully build a minimal MRI with none of those dependencies. The current build process will try to configure core extensions (fiddle, psych, tk, etc) to use the dependencies but will _not_ fail the build if those dependencies aren&#39;t found.<br>
<br>For example, even though you may not have `libyaml`, the build will tryo configure `psych`, warn that it can&#39;t, and complete. When you run the built MRI, you&#39;ll most likely get a runtime warning saying you need to install `libyaml`. However, you can (currently) still process YAML usinghe unmaintained (IIRC) built-in `syck` library that was built as part of the minimal build. I&#39;m not sure how much longer this will continue to be true.<br>
<br>To answer your question, try a minimal build using something like the following and watch the build messages as the process tries to configure anduild extensions:<br><br>./configure --enable-shared --disable-install-doc &amp;&amp; make<br>
<br>Jon<br><br>---<br>http://thecodeshop.github.com | http://jonforums.github.com/<br>twitter: @jonforums<br></div>

--f46d042dff2d268ff704b0ffd943--