With the latest source code from CVS, these instructions work in Mac OS X 10.4 (Tiger) or 10.5 (Leopard). It's best to build on the earliest release that you want to run on; if you build on 10.5, the application will not launch on earlier releases.

Start by making a base directory, such as SheepShaverBuild; in that directory, download the source code:

	mkdir SheepShaverBuild
	cd SheepShaverBuild

	cvs -d :pserver:anoncvs@cvs.cebix.net:/home/cvs/cebix login

	(password is "anoncvs")

	cvs -d :pserver:anoncvs@cvs.cebix.net:/home/cvs/cebix checkout BasiliskII
	cvs -d :pserver:anoncvs@cvs.cebix.net:/home/cvs/cebix checkout SheepShaver

You will need the SDL library in order to build SheepShaver. The officially-recommended way to get this is to install Fink, then use Fink to install the library via "sudo apt-get install sdl", which will give you version 1.2.9 of the SDL library.

Instead of doing that I prefer to build everything from source code. I didn't have any luck doing so with version 1.2.9; instead, I use version 1.2.10:

	mkdir SDL
	cd SDL
	svn checkout http://svn.libsdl.org/tags/SDL/release-1.2.10
	cd release-1.2.10
	./autogen.sh
	./configure --disable-shared --prefix=`pwd`
	make
	make install

The --prefix option supplied here causes "make install" to install everything into the release-1.2.10 directory itself (in subdirectories lib, bin and so on) rather than in the default /usr/lib, /usr/bin, and so on.

You might prefer to build with SDL 1.2.13, just as above but with the obvious substitutions. The only function difference you're likely to notice is in the cursor behavior: when built with 1.2.10, SheepShaver uses the "hardware cursor" approach seen in official builds; when built with 1.2.13, it uses a "software cursor" approach in which the emulated OS is responsible for drawing the cursor.

The SheepShaver configure script will use an SDL tool called "sdl-config" to tell it where some sdl things are. This script is created during the SDL build and installed in the "bin" directory (SDL/release-1.2.10/bin, because of our --prefix). Temporarily add that bin directory to your PATH for the benefit of the SheepShaver configure script. (The only thing in that bin directory is sdl-config, so don't worry.)

	PATH=`pwd`/bin:$PATH
	export PATH
	cd ../..

Now you're back in the root of your source directory (SheepShaverBuild) and ready to configure and build SheepShaver. The first step links files from the BasiliskII subdirectory into the SheepShaver subdirectory:

	cd SheepShaver
	make links

The next step prepares a build configuration:

	cd src/Unix
	NO_CONFIGURE=1 ACLOCAL_FLAGS="-I m4" ./autogen.sh
	./configure --enable-sdl-static --enable-sdl-video --enable-sdl-audio --disable-vosf

All of the above only needs to be done once. Now you're ready to do the actual build; these are the only steps you need to repeat after making any source changes. You'll always do this in the SheepShaver/src/Unix subdirectory: 

	make
	make SheepShaver_app

If all goes well you will end up with a SheepShaver.app in the current directory, which you can just double-click to run.

See http://gwenole.beauchesne.info/en/projects/sheepshaver/help/compiling for the source of most of the above instructions.

kd, 12/13/2008.