mirror of
https://github.com/cmosher01/Epple-II.git
synced 2024-12-29 00:31:40 +00:00
167 lines
4.4 KiB
Plaintext
167 lines
4.4 KiB
Plaintext
anchor:building[]
|
|
|
|
== Building From Source
|
|
|
|
|
|
|
|
The Epple ][ Emulator is written in C+\+, and can be built
|
|
using the standard +make+ program.
|
|
|
|
The primary dependency is
|
|
http://www.libsdl.org/[Simple DirectMedia Layer] (SDL).
|
|
Your linux distribution may provide a package. Or else
|
|
you can download it directly from SDL's web site. In
|
|
either case, be sure to install the ``Development Libraries''
|
|
for your particular platform.
|
|
|
|
|
|
|
|
=== Docker
|
|
|
|
Using Docker is the easiest way to build Epple ][. Assuming Docker and git are installed, you can build as follows:
|
|
|
|
[source,sh]
|
|
---------------------------------------------------
|
|
git clone git@github.com:cmosher01/Epple-II.git
|
|
cd Epple-II
|
|
docker build -t epple2 .
|
|
---------------------------------------------------
|
|
|
|
This will build everything inside the container. You can run Epple-II directly from the container, and access
|
|
it with your favorite VNC client. For example:
|
|
|
|
[source,sh]
|
|
---------------------------------------------------
|
|
docker run -d -p 5900:5900 epple2
|
|
vinagre :0
|
|
---------------------------------------------------
|
|
|
|
=== Arch Linux Example
|
|
|
|
[source,sh]
|
|
---------------------------------------------------
|
|
sudo pacman -S base-devel sdl2 # <1>
|
|
cd
|
|
mkdir epple2
|
|
cd epple2
|
|
wget http://mosher.mine.nu/epple2/download/epple2-{VERSION}.tar.gz # <2>
|
|
tar xzvf epple2-{VERSION}.tar.gz
|
|
mkdir build # <3>
|
|
cd build
|
|
../epple2-{VERSION}/configure # <4>
|
|
make # <5>
|
|
sudo make install # <6>
|
|
---------------------------------------------------
|
|
<1> Install dependencies: gcc, make, SDL
|
|
<2> Retrieve the latest Epple ][ source distribution
|
|
<3> Use this directory for a VPATH-style build
|
|
<4> Run one-time configuration script for your system. Use +--help+ for more information.
|
|
<5> Compile and link. Program will be +src/epple2+
|
|
<6> Install into standard system directories
|
|
|
|
|
|
|
|
=== Windows/MSYS Example
|
|
|
|
==== Install MinGW/MSYS
|
|
|
|
Install MinGW into +C:\MinGW\+
|
|
|
|
For more information on MinGW, see http://www.mingw.org/[].
|
|
|
|
==== Install WiX
|
|
|
|
See http://wixtoolset.org/[] for more information.
|
|
|
|
Download the latest version, for example: win38.exe, and install it.
|
|
|
|
Run MSYS.BAT and add WiX to your PATH in +~/.profile+. For example:
|
|
|
|
[source,sh]
|
|
--------
|
|
export PATH="$PATH:/c/Program Files (x86)/WiX Toolset v3.8/bin"
|
|
--------
|
|
|
|
==== Install SDL
|
|
|
|
At http://www.libsdl.org/[] find the download page for SDL 2.0.
|
|
Download the ``Development Libraries'' for MinGW, for example:
|
|
|
|
+SDL2-devel-2.0.1-mingw.tar.gz+
|
|
|
|
and save it to your MSYS home directory (for example, +C:\Users\Administrator+).
|
|
Run MSYS.BAT, and at the bash prompt, go to your home directory and
|
|
untar the SDL archive to your home directory:
|
|
|
|
[source,sh]
|
|
--------
|
|
$ cd
|
|
$ tar xzvf SDL2-devel-2.0.1-mingw.tar.gz
|
|
--------
|
|
|
|
Then follow the instructions to install SDL, for example:
|
|
|
|
[source,sh]
|
|
--------
|
|
$ cd SDL2-2.0.1
|
|
$ make native
|
|
--------
|
|
|
|
I also needed to create a symlink for the SDL include files:
|
|
|
|
[source,sh]
|
|
--------
|
|
$ cd /usr/include
|
|
$ ln -s SDL2 SDL
|
|
--------
|
|
|
|
==== Untar Epple ][ Source
|
|
|
|
Download the Epple ][ Source Distribution
|
|
and save it to your MSYS home directory (for example, +C:\Users\Administrator+).
|
|
Run MSYS, and at the bash prompt, go to your home directory and
|
|
untar the epple2 source distribution tar file. For example:
|
|
|
|
[source,sh]
|
|
--------
|
|
$ cd
|
|
$ tar xzvf epple2-1.1.tar.gz
|
|
--------
|
|
|
|
==== Build Epple ][
|
|
|
|
Then build as follows. I recommend doing a VPATH build,
|
|
where you build into a different directory than the source
|
|
directory. To accomplish this, create a new directory for
|
|
building, somewhere, such as:
|
|
|
|
[source,sh]
|
|
--------
|
|
$ cd
|
|
$ mkdir buildepple2
|
|
$ cd buildepple2
|
|
--------
|
|
|
|
Then run +configure+ from there. For the MSYS build to work,
|
|
you need some extra parameters to the build, and you could
|
|
also add some compiler options to optimize the build. For
|
|
example (from the +buildepple2+ directory you just created):
|
|
|
|
[source,sh]
|
|
--------
|
|
$ ~/epple2/configure --prefix= CXXFLAGS=-I/usr/include LDFLAGS=-L/usr/lib
|
|
$ make CXXFLAGS="-I/usr/include `sdl2-config --cflags`" LDFLAGS="`sdl2-config --cflags` -static-libstdc++ -static-libgcc"
|
|
--------
|
|
|
|
If all goes well, it will build without any errors.
|
|
If you get errors about not finding +SDL.h+, make sure
|
|
SDL is installed, and make sure the configure command
|
|
is correct. (If you just run configure without the
|
|
options shown above, you will get this error at build time.)
|
|
The result of the build (on Windows platform) is
|
|
|
|
+installer/epple2.msi+
|
|
|
|
which is an installable file for Windows. To install
|
|
epple2, just double-click on this file from Explorer.
|