Building on Linux

Take a recent version of dlEmu8080 from one of the following sources :

I build dlEmu8080 on a Linux Debian 6.0.3 (Squeeze) distribution. Hereafter follows a summary of the libraries and programs that need to be installed on your system. Please be aware that header files should be available for the building process, so typically you need the -dev versions to be installed. Mostly any recent version of the libs will do. Where there is an explicit and known minimum version, I indicated. Feedback appreciated.

Program/Lib Minimum Version
scons 2.2.0
gcc 4.4.5
qt4 4.6.3

If all libraries and programs are available, you can start the building process. Point yourself within the top directory and issue :

scons -Q
sudo scons -Q install

This will build and install a default dlEmu8080, using a configuration file 'BuildConfs/DefaultBuild.py'. While on screen a summary of the build process is shown, there will be also a 'DefaultBuild.log' file giving more details in case you want to debug the build or understand better what's going on.

Alternatively you can use another build configurationfile by issuing :

scons -Q --dlBuildConfFile=BuildConfs/SomeOther.py
sudo scons -Q --dlBuildConfFile=BuildConfs/SomeOther.py install

See the BuildConfs directory for some examples of configuration files. Hereafter follows a summary of the different options in such configuration file (and that you can also use at the scons command line to overwrite the configuration file default). See also 'scons -Q -h'.

Option Description Default
DL_BUILD_CONF_NAME Name for this build. Used as subdir in build directory. Basename of build log file.
DL_RELEASE Set to 1 for a 'release' type build. 0 for a 'debug' type build. 1
DL_WITH_CONSOLE Under win32, have the program run with a 'console'. 1
DL_DEBUG_MEMORY Dynamic memory allocation of dlEmu8080 (not of the models !) is traced and logged in Memory.log 0
DL_WITH_VTTEST A modified version of vttest is built along with dlEmu8080 in order to validate the VT220 emulator. 1
DL_INSTALL_PATH Where dlEmu8080 will be installed. /opt
QT4DIR The path to the QT4 installation. If qmake is for instance in '/usr/foo/bar/bin/qmake' then QT4DIR should be '/usr/foo/bar'. Detected from system.
DL_TOOLS_DIR Path to the gcc installation. If gcc is for instance in '/usr/foo/bar/bin/gcc' then DL_TOOLS_DIR should be '/usr/foo/bar/bin'. Detected from system.
DL_TARGET_PLATFORM posix or win32. Detected from system.
DL_HOST_PLATFORM posix or win32. Detected from system.
DL_CROSS Prefix for cross compilation. If your gcc is f.i. called 'i686-pc-mingw32-gcc', then DL_CROSS should be 'i686-pc-mingw32-' None.

Using under Windows

The download page contains a Windows installer. Just use that one.

Building on Windows

I don't build under Windows. I assume a mingw32/MSYS based build should work very much along the lines described earlier. Any feedback appreciated.

Building for Windows

Building for Windows is done as a crosscompilation from Linux. You should install mxe. At least make gcc, binutils, qt, mingw-utils, mingwrt and nsis. Then use a build configuration file based on :

myPrefix           = '/home/jos/SoftwareInstalledOnThis/mxe/usr'
DL_BUILD_CONF_NAME = 'JosMXE'
DL_RELEASE         = 1
DL_DEBUG_MEMORY    = 1
DL_WITH_VTTEST     = 1
QT4DIR             = myPrefix
DL_TOOLS_DIR       = myPrefix + '/bin'
DL_TARGET_PLATFORM = 'win32'
DL_CROSS           = 'i686-pc-mingw32-'