summaryrefslogtreecommitdiffhomepage
path: root/doc/mdk_install.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/mdk_install.texi')
-rw-r--r--doc/mdk_install.texi180
1 files changed, 180 insertions, 0 deletions
diff --git a/doc/mdk_install.texi b/doc/mdk_install.texi
new file mode 100644
index 0000000..78690ba
--- /dev/null
+++ b/doc/mdk_install.texi
@@ -0,0 +1,180 @@
+@node Installing MDK, MIX and MIXAL tutorial, Introduction, Top
+@comment node-name, next, previous, up
+@chapter Installing @sc{mdk}
+
+@menu
+* Download::
+* Requirements::
+* Basic installation::
+* Emacs support::
+* Special configure flags::
+@end menu
+
+@node Download, Requirements, Installing MDK, Installing MDK
+@comment node-name, next, previous, up
+@section Download the source tarball
+
+GNU @sc{mdk} is distributed as a source tarball available for download in
+the following @acronym{URL}s:
+
+@itemize @bullet
+@item
+@url{ftp://ftp.gnu.org/pub/gnu/mdk} (or one of
+@uref{http://www.gnu.org/prep/ftp.html, its mirrors})
+@item
+@uref{http://sourceforge.net/project/showfiles.php?group_id=13897}
+@end itemize
+
+The above sites contain the latest stable releases of @sc{mdk}. The
+development branch is available at:
+
+@itemize @bullet
+@item
+@uref{http://sourceforge.net/cvs/?group_id=13897}
+@end itemize
+
+After you have downloaded the source tarball, unpack it in a directory
+of your choice using the command:
+
+@example
+tar xfvz mdk-X.Y.tar.gz
+@end example
+
+@noindent
+where @var{X.Y} stands for the downloaded version (the current stable
+release being version @value{VERSION}).
+
+@node Requirements, Basic installation, Download, Installing MDK
+@comment node-name, next, previous, up
+@section Requirements
+
+In order to build and install @sc{mdk}, you will need the following
+libraries installed in your system:
+
+@itemize @minus
+@item
+@uref{http://www.gtk.org, GLIB 1.2.0} (required)
+@item
+@uref{http://www.gnu.org/software/flex/flex.html, GNU Flex 2.3} (required)
+@item
+@uref{http://www.gtk.org, GTK+ 1.2.0} (optional)
+@item
+@uref{ftp://ftp.gnome.org/pub/GNOME/stable/sources/libglade/, libglade}
+(optional)
+@item
+GNU readline and history libraries (optional)
+@end itemize
+
+If present, readline and history are used to provide command completion
+and history management to the command line MIX virtual machine, @code{mixvm}
+GTK+ and libglade are needed if you want to build the graphical
+interface to the MIX virtual machine, @code{gmixvm}.
+
+@strong{Please note}: you need both the libraries @emph{and} the
+headers; this means both the library package and the @file{-dev} package
+if you do not compile your libraries yourself (ex: installing
+@file{libgtk1.2} and @file{libgtk1.2-dev} on Debian).
+
+@node Basic installation, Emacs support, Requirements, Installing MDK
+@comment node-name, next, previous, up
+@section Basic installation
+
+@sc{mdk} uses GNU Autoconf and Automake tools, and, therefore, should
+be built and installed without hassle using the following commands
+inside the source directory:
+
+@example
+./configure
+make
+make install
+@end example
+
+@noindent
+where the last one must be run as root.
+
+The first command, @code{configure}, will setup the makefiles for your
+system. In particular, @code{configure} will look for GTK+ and libglade,
+and, if they are present, will generate the appropiate makefiles for
+building the @code{gmixvm} graphical user interface. Upon completion,
+you should see a message with the configuration results like the
+following:
+
+@example
+*** GNU MDK 0.3 has been successfully configured. ***
+
+Type make to build the following utilities:
+ - mixasm (MIX assembler)
+ - mixvm (MIX virtual machine, with readline support)
+ - gmixvm (mixvm GTK+ GUI)
+@end example
+
+@noindent
+where the last line may be missing if you lack the above mentioned
+libraries.
+
+The next command, @code{make}, will actually build the @sc{mdk} programs
+in the following locations:
+
+@itemize @minus
+@item
+@file{mixutils/mixasm}
+@item
+@file{mixutils/mixvm}
+@item
+@file{mixgtk/gmixvm}
+@end itemize
+
+You can run these programs from within their directories, but I
+recommend you to install them in proper locations using @code{make
+install} from a root shell.
+
+@node Emacs support, Special configure flags, Basic installation, Installing MDK
+@comment node-name, next, previous, up
+@section Emacs support
+
+@code{mixvm} can be run within an Emacs GUD buffer using the elisp
+program @file{misc/mixvm.el}, kindly contributed by @value{PHILIP}.
+
+@file{mixvm.el} provides an interface between @sc{mdk}'s @code{mixvm}
+and Emacs, via @acronym{GUD}. Place this file in your load-path,
+optionally adding the following line to your @file{.emacs} file:
+
+@lisp
+(autoload 'mixvm "mixvm" "mixvm/gud interaction" t)
+@end lisp
+
+
+
+@node Special configure flags, , Emacs support, Installing MDK
+@comment node-name, next, previous, up
+@section Special configure flags
+
+You can fine tunning the configuration process using the following
+switches with configure:
+
+@defopt --enable-gui[=yes|no]
+@defoptx --disable-gui
+Enables/disables the built of the MIX virtual machine GUI
+(@code{gmixvm}). If the required libraries are missing
+(@pxref{Requirements}) the configure script with automatically disable
+this feature.
+@end defopt
+
+@defopt --with-readline[=yes|no]
+@defoptx --without-readline
+Enables/disables the GNU Readline support for @code{mixvm}. If the
+required libraries are missing (@pxref{Requirements}) the configure
+script with automatically disable this feature.
+@end defopt
+
+For additional, boilerplate configure options, see the @file{INSTALL}
+file, or run
+
+@example
+configure --help
+@end example
+
+
+
+
+