2012-05-02 08:06:40 +04:00
|
|
|
= What's Ruby
|
1998-01-16 15:13:05 +03:00
|
|
|
|
|
|
|
Ruby is the interpreted scripting language for quick and
|
|
|
|
easy object-oriented programming. It has many features to
|
|
|
|
process text files and to do system management tasks (as in
|
1999-01-20 07:59:39 +03:00
|
|
|
Perl). It is simple, straight-forward, and extensible.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2001-07-11 23:25:52 +04:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== Features of Ruby
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
* Simple Syntax
|
|
|
|
* *Normal* Object-Oriented features(ex. class, method calls)
|
|
|
|
* *Advanced* Object-Oriented features(ex. Mix-in, Singleton-method)
|
|
|
|
* Operator Overloading
|
|
|
|
* Exception Handling
|
|
|
|
* Iterators and Closures
|
|
|
|
* Garbage Collection
|
|
|
|
* Dynamic Loading of Object files(on some architecture)
|
|
|
|
* Highly Portable (works on many Unix-like/POSIX compatible platforms
|
2008-10-29 07:20:42 +03:00
|
|
|
as well as Windows, Mac OS X, BeOS etc.)
|
2011-12-20 01:07:09 +04:00
|
|
|
cf. http://bugs.ruby-lang.org/projects/ruby-trunk/wiki/SupportedPlatforms
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2001-07-11 23:25:52 +04:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== How to get Ruby
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2007-02-20 10:34:30 +03:00
|
|
|
The Ruby distribution files can be found in the following FTP site:
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
ftp://ftp.ruby-lang.org/pub/ruby/
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2007-02-20 10:34:30 +03:00
|
|
|
The trunk of the Ruby source tree can be checked out with the
|
|
|
|
following command:
|
1999-08-13 09:45:20 +04:00
|
|
|
|
2007-02-20 10:34:30 +03:00
|
|
|
$ svn co http://svn.ruby-lang.org/repos/ruby/trunk/ ruby
|
|
|
|
|
2012-01-03 15:48:20 +04:00
|
|
|
Or if you are using git then use following command:
|
|
|
|
|
|
|
|
$ git clone git://github.com/ruby/ruby.git
|
|
|
|
|
2007-02-20 10:34:30 +03:00
|
|
|
There are some other branches under development. Try the following
|
|
|
|
command and see the list of branches:
|
|
|
|
|
|
|
|
$ svn ls http://svn.ruby-lang.org/repos/ruby/branches/
|
1999-08-13 09:45:20 +04:00
|
|
|
|
2012-01-03 15:48:20 +04:00
|
|
|
Or if you are using git then use following command:
|
|
|
|
|
|
|
|
$ git ls-remote git://github.com/ruby/ruby.git
|
2001-07-11 23:25:52 +04:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== Ruby home-page
|
2001-07-11 23:25:52 +04:00
|
|
|
|
|
|
|
The URL of the Ruby home-page is:
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
http://www.ruby-lang.org/
|
2001-07-11 23:25:52 +04:00
|
|
|
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== Mailing list
|
1999-08-13 09:45:20 +04:00
|
|
|
|
|
|
|
There is a mailing list to talk about Ruby.
|
|
|
|
To subscribe this list, please send the following phrase
|
|
|
|
|
2012-11-26 20:01:51 +04:00
|
|
|
subscribe YourFirstName YourFamilyName
|
1999-08-13 09:45:20 +04:00
|
|
|
e.g.
|
|
|
|
subscribe Joseph Smith
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
in the mail body (not subject) to the address <mailto:ruby-talk-ctl@ruby-lang.org>.
|
1999-08-13 09:45:20 +04:00
|
|
|
|
2001-07-11 23:25:52 +04:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== How to compile and install
|
1998-01-16 15:13:05 +03:00
|
|
|
|
1998-01-16 15:19:22 +03:00
|
|
|
This is what you need to do to compile and install Ruby:
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-11-26 20:01:51 +04:00
|
|
|
0. If you want to use Microsoft Visual C++ to compile ruby,
|
|
|
|
read win32/README.win32 instead of this document.
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
1. If +./configure+ does not exist or is older than configure.in,
|
2000-12-27 08:59:03 +03:00
|
|
|
run autoconf to (re)generate configure.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
2. Run +./configure+, which will generate config.h and Makefile.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2008-05-31 18:34:23 +04:00
|
|
|
Some C compiler flags may be added by default depending on your
|
2012-05-02 08:06:40 +04:00
|
|
|
environment. Specify <tt>optflags=..</tt> and <tt>warnflags=..</tt> as
|
|
|
|
necessary to override them.
|
2008-05-31 18:34:23 +04:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
3. Edit +defines.h+ if you need. Usually this step will not be needed.
|
2000-12-27 08:59:03 +03:00
|
|
|
|
2012-11-26 20:01:51 +04:00
|
|
|
4. Remove comment mark(<tt>#</tt>) before the module names from +ext/Setup+
|
|
|
|
(or add module names if not present), if you want to link modules
|
1999-01-20 07:59:39 +03:00
|
|
|
statically.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
1999-01-20 07:59:39 +03:00
|
|
|
If you don't want to compile non static extension modules
|
|
|
|
(probably on architectures which does not allow dynamic loading),
|
2012-05-02 08:06:40 +04:00
|
|
|
remove comment mark from the line "<tt>#option nodynamic</tt>" in
|
|
|
|
+ext/Setup+.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-11-26 20:01:51 +04:00
|
|
|
Usually this step will not be needed.
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
5. Run +make+.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
6. Optionally, run '<tt>make check</tt>' to check whether the compiled Ruby
|
|
|
|
interpreter works well. If you see the message "<tt>check succeeded</tt>",
|
1999-01-20 07:59:39 +03:00
|
|
|
your ruby works as it should (hopefully).
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
7. Run '<tt>make install</tt>'
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2010-05-06 07:12:28 +04:00
|
|
|
This command will create following directories and install files
|
|
|
|
onto them.
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
* <tt>${DESTDIR}${prefix}/bin</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/site_ruby</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/vendor_ruby</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/lib/ruby/gems/${MAJOR}.${MINOR}.${TEENY}</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/share/man/man1</tt>
|
|
|
|
* <tt>${DESTDIR}${prefix}/share/ri/${MAJOR}.${MINOR}.${TEENY}/system</tt>
|
|
|
|
|
2012-05-03 19:09:39 +04:00
|
|
|
If Ruby's API version is '_x.y.z_', the <tt>${MAJOR}</tt> is '_x_', the
|
|
|
|
<tt>${MINOR}</tt> is '_y_', and the <tt>${TEENY}</tt> is '_z_'.
|
2012-05-02 08:06:40 +04:00
|
|
|
|
|
|
|
*NOTE*: teeny of the API version may be different from one of
|
2010-05-06 07:12:28 +04:00
|
|
|
Ruby's program version
|
|
|
|
|
1999-01-20 07:59:39 +03:00
|
|
|
You may have to be a super user to install ruby.
|
|
|
|
|
|
|
|
If you fail to compile ruby, please send the detailed error report with
|
1998-01-16 15:13:05 +03:00
|
|
|
the error log and machine/OS type, to help others.
|
|
|
|
|
2013-01-08 06:18:46 +04:00
|
|
|
Some extension libraries may not get compiled because of lack of
|
|
|
|
necessary external libraries and/or headers, then you will need to run
|
|
|
|
'<tt>make distclean-ext</tt>' to remove old configuration after
|
|
|
|
installing them in such case.
|
1998-01-16 15:19:22 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== Copying
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
See the file +COPYING+.
|
1998-01-16 15:13:05 +03:00
|
|
|
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
== The Author
|
1998-01-16 15:13:05 +03:00
|
|
|
|
2011-08-26 01:00:03 +04:00
|
|
|
Feel free to send comments and bug reports to the author. Here is the
|
1998-01-16 15:13:05 +03:00
|
|
|
author's latest mail address:
|
|
|
|
|
2012-05-02 08:06:40 +04:00
|
|
|
<mailto:matz@ruby-lang.org>
|
1998-01-16 15:13:05 +03:00
|
|
|
|
|
|
|
-------------------------------------------------------
|
|
|
|
created at: Thu Aug 3 11:57:36 JST 1995
|
2012-05-02 08:06:40 +04:00
|
|
|
--
|
1998-01-16 15:13:05 +03:00
|
|
|
Local variables:
|
2012-05-02 08:06:40 +04:00
|
|
|
mode: rdoc
|
1998-01-16 15:13:05 +03:00
|
|
|
end:
|