INSTALL for Lua 5.1

* Building Lua
  ------------
  Lua is built in the src directory, but the build process can be
  controlled from the top-level Makefile.

  Building Lua on Unix systems should be very easy. First do "make" and
  see if your platform is listed. If so, just do "make xxx", where xxx
  is your platform name. The platforms currently supported are:
	ansi bsd generic linux macosx mingw posix solaris

  See below for customization instructions and for instructions on how
  to build with other Windows compilers.

  If you want to check that Lua has been built correctly, do "make test"
  after building Lua. Also, have a look at the example programs in test.

* Installing Lua
  --------------
  Once you have built Lua, you may want to install it in an official
  place in your system. In this case, do "make install". The official
  place and the way to install files are defined in Makefile. You must
  have the right permissions to install files.

  If you want to build and install Lua in one step, do "make xxx install",
  where xxx is your platform name.

  If you want to install Lua locally, then do "make local". This will
  create directories bin, include, lib, man, and install Lua there as
  follows:

    bin:	lua luac
    include:	lua.h luaconf.h lualib.h lauxlib.h lua.hpp
    lib:	liblua.a
    man/man1:	lua.1 luac.1

  These are the only directories you need for development.

  There are man pages for lua and luac, in both nroff and html, and a
  reference manual in html in doc, some sample code in test, and some
  useful stuff in etc. You don't need these directories for development.

  If you want to install Lua locally, but in some other directory, do
  "make install INSTALL_TOP=xxx", where xxx is your chosen directory.

  See below for instructions for Windows and other systems.

* Customization
  -------------
  Three things can be customized by editing a file:
    - Where and how to install Lua -- edit Makefile.
    - How to build Lua -- edit src/Makefile.
    - Lua features -- edit src/luaconf.h.

  You don't actually need to edit the Makefiles because you may set the
  relevant variables when invoking make.

  On the other hand, if you need to select some Lua features, you'll need
  to edit src/luaconf.h. The edited file will be the one installed, and
  it will be used by any Lua clients that you build, to ensure consistency.

  We strongly recommend that you enable dynamic loading. This is done
  automatically for all platforms listed above that have this feature
  (and also Windows). See src/luaconf.h and also src/Makefile.

* Building Lua on Windows and other systems
  -----------------------------------------
  If you're not using the usual Unix tools, then the instructions for
  building Lua depend on the compiler you use. You'll need to create
  projects (or whatever your compiler uses) for building the library,
  the interpreter, and the compiler, as follows:

  library:	lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c
		lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c
		ltable.c ltm.c lundump.c lvm.c lzio.c
		lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c loslib.c
		ltablib.c lstrlib.c loadlib.c linit.c

  interpreter:	library, lua.c

  compiler:	library, luac.c print.c

  If you use Visual Studio .NET, you can use etc/luavs.bat
  in its "Command Prompt".

  If all you want is to build the Lua interpreter, you may put all .c files
  in a single project, except for luac.c and print.c. Or just use etc/all.c.

  To use Lua as a library in your own programs, you'll need to know how to
  create and use libraries with your compiler.

  As mentioned above, you may edit luaconf.h to select some features before
  building Lua.

(end of INSTALL)
