Emaculation.com
 

Compiling BasiliskII and SheepShaver for different host environments

The official source code for BasiliskII and SheepShaver has been relocated to a GitHub repository. It can now be downloaded from:

HOWEVER NOTE: This guide describes building BasiliskII and Sheepshaver from the currently most advanced code from kanjitalk755 fork:

++++ WORK IN PROGRESS ++++

Building BasiliskII and SheepShaver in Windows

Prepare your build environment

Install msys2 32-bit from https://www.msys2.org/wiki/MSYS2-installation/ in c:\msys32 and start msys2.exe

Update msys2:

  • pacman -Syu (closing and restarting msys2 when requested)
  • pacman -Su

Install the following packages:

  • pacman -S base-devel
  • pacman -S git
  • pacman -S mingw-w64-i686-toolchain
  • pacman -S mingw-w64-i686-glib2
  • pacman -S mingw32/mingw-w64-i686-gcc
  • pacman -S mingw32/mingw-w64-i686-gtk2
  • pacman -S mingw32/mingw-w64-i686-SDL2

Close msys2
Start mingw32.exe

Download the source code (we use the source from kanjitalk755 on github):

git clone https://github.com/kanjitalk755/macemu
Build Basilisk II
cd macemu/BasiliskII/src/Windows
NO_CONFIGURE=1 ../Unix/autogen.sh
./configure --with-bincue
make 
strip BasiliskII.exe
strip BasiliskIIGUI.exe
Build SheepShaver
cd macemu/SheepShaver 
make links
cd src/Windows
NO_CONFIGURE=1 ../Unix/autogen.sh
./configure --with-bincue
make
strip SheepShaver.exe
strip SheepShaverGUI.exe

Building BasiliskII and SheepShaver in OSX/macOS

First

- Install latest Xcode from Apple's AppStore

- Download SDL2 2.0.10 or later for Mac OS X from https://libsdl.org/download-2.0.php and install SDL2.framework in /Library/Frameworks/

- Download BasiliskII and SheepShaver source code (we use the source from kanjitalk755 on GitHub):
Go to https://github.com/kanjitalk755/macemu , click the green “Code” button, and choose “Download ZIP”

Build BasiliskII

With Xcode:
- Open macemu-master/BasiliskII/src/MacOSX/BasiliskII.xcodeproj
- Product menu > Scheme: Make sure BasiliskII is selected
- Product menu > Scheme > Edit Scheme…: Set Build Configuration to Release for all five items Run, Test, Profile, Analyze, and Archive
- Product menu > Build

The default location of the built product will be:
~/Library/Developer/Xcode/DerivedData/BasiliskII-xxxxxxxxxxx/Build/Products/Release/BasiliskII

Or use the command line:
Recent versions of autoconf, automake, and libtool need to be installed separately (not installed with Xcode).

cd macemu-master/BasiliskII/src/Unix
./autogen.sh
make

Build SheepShaver

With Xcode:
- Open macemu-master/SheepShaver/src/MacOSX/SheepShaver_Xcode8.xcodeproj (not SheepShaver.xcodeproj)
- Product menu > Scheme: Make sure SheepShaver is selected
- Product menu > Scheme > Edit Scheme…: Set Build Configuration to Release for all five items Run, Test, Profile, Analyze, and Archive
- Product menu > Build

The default location of the built product will be:
~/Library/Developer/Xcode/DerivedData/SheepShaver_Xcode8-xxxxxxxxxxx/Build/Products/Release/SheepShaver

Or use the command line:
Recent versions of autoconf, automake, and libtool need to be installed separately (not installed with Xcode).

cd macemu-master/SheepShaver/src/Unix
./autogen.sh
make

Building BasiliskII and SheepShaver in Linux

Placeholder

Old compiling instructions below

Preparing your build environment

Common assumptions:

  • You have a folder called “src” inside your home folder in which you are going to place all downloads mentioned below. The folder structure we are assuming looks like this:
  • src
  • src\SDL-1.2.15
  • src\macemu\BasiliskII (this folder will be created automatically if you follow the directions below)
  • src\macemu\SheepShaver (this folder will be created automatically if you follow the directions below)

OSX Snow Leopard

Please note that the current code only builds in Snow Leopard with XCode 3.x (latest 3.2.6)! Newer versions of OSX and XCode are not supported.

To build BasiliskII there is only the command line method. To build SheepShaver with OSX you have two options. You can use the command line method, or the XCode project method. Both are described below. In any case you need Xcode installed. The Xcode method requires that the 10.4 SDK be installed. If you did not install it when you installed Xcode, run the Xcode installer again. In the Installation Type dialog, select the option to install the 10.4 SDK (it is unchecked by default).

Using the command line
Cd to your “src” folder.

  • Download the source code from: http://www.libsdl.org/release/SDL-1.2.15.zip
  • unpack the code in the folder “src/SDL-1.2.15” folder
  • start a terminal window
  • cd to the folder containing the SDL source and run the following:
./autogen.sh
./configure --disable-shared --prefix=`pwd`
make
make install
PATH=`pwd`/bin:$PATH
export PATH

* You need to cd into the SDL folder every time you start a new terminal window and export the path (the last two command lines above) to sdl-config to build SheepShaver, so SDL libs and sdl-config file can be found.

Using Xcode (3.x, with 10.4 SDK installed)

Linux

You need GCC and G++ installed, plus several other development packages, like SDL-1.2.15 development, the X-headers, the libgnome-development package, cvs access

  • Your SDL installation and other packages should be found automatically when you start building SheepShaver or BasiliskII

Actions for all environments

Download the source code:

If you have Git installed

Use the following command to download the source code:

git clone https://github.com/cebix/macemu.

Find the “macemu” folder in your git repository folder and copy it into your “src” folder. This will create the folders BasiliskII and SheepShaver in the “src/macemu” folder.

If you don't have Git installed
  • Go to https://github.com/cebix/macemu and download the source code with “Download ZIP”
  • Extract the zip file in your “src” folder. This will create the folders BasiliskII and SheepShaver in the “src/macemu” folder.

The SheepShaver code is not needed if you only want to compile BasiliskII.

Building BasiliskII in OSX Snow Leopard

If you started a new terminal window, then don't forget to export the path to SDL (see above at “Preparing your build environment”):

cd src/SDL-1.2.15/
PATH=`pwd`/bin:$PATH
export PATH

cd to the BasiliskII folder and:

cd src/Unix
export CC=/usr/bin/gcc-4.0
export CXX=/usr/bin/g++-4.0
NO_CONFIGURE=1 ./autogen.sh
./configure --enable-sdl-video --enable-sdl-audio --disable-vosf --enable-jit-compiler
make
make BasiliskII_app

For an “in depth” overview of build possibilities, also check http://mrob.com/pub/comp/basilisk-ii.html

Building BasiliskII in Linux flavours

Ubuntu, Fedora, SuSE:

cd BasiliskII
cd src/Unix
NO_CONFIGURE=1 ./autogen.sh
./configure --enable-sdl-video --enable-sdl-audio --disable-vosf --enable-jit-compiler
make
strip BasiliskII

CentOS-64:

  • First edit the file \src\BasiliskII\src\Unix\configure.ac and comment out the lines 113 to 125, like this
dnl Check if we should really be assuming x86_64 even if we detected HAVE_I386 above. 
dnl if [[ "x$HAVE_I386" = "xyes" ]]; then
dnl  AC_TRY_RUN([
dnl    int main(void) {
dnl        #if defined(__x86_64__)
dnl                return 0;
dnl        #else
dnl                return 1;
dnl        #endif
dnl    }
dnl  ], [
dnl    HAVE_I386=no
dnl    HAVE_X86_64=yes
dnl  ])
dnl fi
cd BasiliskII
cd src/Unix
NO_CONFIGURE=1 ./autogen.sh
./configure --enable-sdl-video --enable-sdl-audio --disable-vosf --enable-jit-compiler
make
strip BasiliskII

Building SheepShaver in OSX Snow Leopard

You have two option to build Sheepshaver in OSX, using the command line or using the XCode project file. Stick to the method you used to prepare your build environment as described above.

Using the command line

If you started a new terminal window, then don't forget to export the path to SDL (see above at “Preparing your build environment”):

cd src/SDL-1.2.15/
PATH=`pwd`/bin:$PATH
export PATH

cd to the SheepShaver folder and do:

make links
cd src/Unix
NO_CONFIGURE=1 ./autogen.sh
./configure --enable-sdl-audio --enable-sdl-video --disable-vosf
make
make SheepShaver_app

Using the Xcode project file
Open a terminal and cd to the SheepShaver folder and do:

make links 

Close the terminal

  • open the src/SheepShaver/src/MacOSX/SheepShaver.xcodeproj file. Xcode opens.
  • in the “Debug | SheepShaver | …” drop-down menu choose “Release”
  • build the project by selecting Build in the Build menu
  • SheepShaver is then found in the src/SheepShaver/src/MacOSX/build/release/ folder

Building SheepShaver in Linux flavours

  • SheepShaver currently suffers from issues regarding running in a window/full screen. For full screen support, follow the directions below. However, if you want a stable build for windowed use, delete “–enable-sdl-video” and “–enable-sdl-audio” from the ./configure step.

Ubuntu, Fedora, SuSE:

cd to the SheepShaver folder and:

make links
cd src/Unix
NO_CONFIGURE=1 ./autogen.sh
./configure --enable-sdl-video --enable-sdl-audio --disable-vosf
make
strip SheepShaver

Tidbits

  • Source code for Visual C for basiliskII and SheepShaver:

There are some unfinished attempts (jan. 2011) to update the source code for Basilisk and SheepShaver for Windows that build in Visual C. The code also builds in MinGW. It originates from here: https://github.com/tycho/basiliskii and https://github.com/tycho/sheepshaver

The code is mirrored here:
BasiliskII_source
SheepShaver_source

  • A version of Basilisk for Haiku is available:

http://sys6502.blogspot.com

The application is mirrored here:
Basilisk for Haiku
You need to set the correct rights on the application, so set it to execute for the current user.

  • SDL 1.2.15 doesn't build with XCode 5.0.1 on Mavericks: this patch fixes SDL_QuartzVideo.h:

source: http://ftp.cc.uoc.gr/mirrors/macports/release/ports/devel/libsdl/files/no-CGDirectPaletteRef.patch

@@ -91,7 +91,9 @@ typedef struct SDL_PrivateVideoData {
     CGDirectDisplayID  display;            /* 0 == main display (only support single display) */
     const void         *mode;              /* current mode of the display */
     const void         *save_mode;         /* original mode of the display */
+#if (MAC_OS_X_VERSION_MIN_REQUIRED < 1070)
     CGDirectPaletteRef palette;            /* palette of an 8-bit display */
+#endif
     NSOpenGLContext    *gl_context;        /* OpenGL rendering context */
     NSGraphicsContext  *nsgfx_context;     /* Cocoa graphics context */
     Uint32             width, height, bpp; /* frequently used data about the display */
compiling_sheepshaver_basilisk.txt · Last modified: 2020/09/27 09:20 by ronald_p._regensburg
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 4.0 International
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki