[plt-dev] in-place build directory (was re: build error with svn 14677)
On May 5, 2009, at 9:20 AM, Carl Eastlund wrote:
> Quick instructions:
>
> From this directory (where the `README' and `configure' files are),
> run the following commands:
>
> mkdir build
When you automate this (as I have done in some script), you may wish
to do something like this:
TARGET="build:`date | sed -e"s/ /_/g"`"
...
mkdir "$TARGET"
or whatever trick you know to make a unique directory.
-- Matthias
> cd build
> ../configure
> make
> make install
>
> This will create an in-place installation of PLT Scheme and store the
> results of C/C++ compilation in a separate `build' subdirectory,
> which is useful if you need to update your sources, delete the build,
> and start from scratch.
>
> You can also run the typical `./configure && make && make install' if
> you don't anticipate updating/rebuilding, but it will be harder to
> restart from scratch should you need to.
>
> --------------------
>
> 1. Select (or create) a build directory.
>
> It's better to run the build in a directory other than the one
> containing `configure', especially if you're getting sources via
> Subversion. A common way to start a Subversion-based build is:
>
> cd [here]
> mkdir build
> cd build
>
> where "[here]" is the directory containing this `README' file and
> the `configure' script. The Subversion repository is configured
> to support this convention by ignoring `build' in this directory.
>
> A separate build directory is better in case the Makefile
> organization changes, or in case the Makefiles lack some
> dependencies. In those cases, when using a "build" subdirectory,
> you can just delete and re-create "build" without mangling your
> source tree.
>
> 2. From your build directory, run the script `configure' (which is in
> the same directory as this README), with optional command-line
> arguments --prefix=TARGETDIR or --enable-shared (or both).
>
> For example, if you want to install into /usr/local/plt using
> dynamic libraries, then run:
>
> [here]configure --prefix=/usr/local/plt --enable-shared
>
> Again, "[here]" is the directory path containing the `configure'
> script. If you follow the convention of running from a "build"
> subdirectory, "[here]" is just "../". If you build from the
> current directory, "[here]" is possibly unnecessary, or possibly
> just "./", depending on your shell and PATH setting.
>
> --------------------
>
> After that it resumes with discussion of the --prefix flag, and
> continues as before except for step re-numbering.
>
> --
> Carl Eastlund
> _________________________________________________
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-dev