Compiling Instructions and Dependencies
2014-04-18 VERSION 1.1.1.3 


LINUX you will need:
* g++
* qt4-dev-tools
* flex
* bison
* libsdl-mixer??-dev
* libespeak-dev (if using the LINUX_ESPEAK option in BASIC256.pro)
  - this option gives an integrated library approach to the say statement
* espeak (if using the LINUX_ESPEAK_EXECUTE option in BASIC256.pro)
  - use this option and install if the library use of portaudio conflicts with other sound systems installed


WINDOWS (QT5.2.1)

* QT SDK with MINGW Compiler
	** Available from:
		http://download.qt-project.org/official_releases/qt/5.1/5.1.1/qt-windows-opensource-5.1.1-mingw48_opengl-x86-offline.exe
	** BE SURE to choose the mingw compiler from tools it will be the correct version
		for the QT binary support files
	** add paths C:\Qt\5.2.1\mingw48_32\bin;C:\Qt\Tools\mingw48_32\bin; to your system environment variable
	** in folder C:\Qt\Tools\mingw48_32\bin
		copy mingw32-make.exe make.exe

* MSYS developer tools and libraries
	** Available from:
		http://sourceforge.net/projects/mingw/files/Installer/
	** install mingw-developer-toolkit bundle from the on-line installer
		YOU DO NOT NEED THE c++ compiler - you already downloaded that as part of the QT bundle
	** add paths C:\MinGW\bin;C:\MinGW\msys\1.0\bin to your system environment
  
* libespeak - TTS Library
	** follow instructions on compiling espeak at
		http://jarek.katowice.pl/other/forum/viewtopic.php?f=5&t=17
	** or download binary bundle
	** copy libspeak.dll, libportaudio-2.dll, libpthread-2.dll
		to C:\Qt\5.2.1\mingw48_32\lib
		and basic256/trunk/debug
		and basic256/trunk/release
	** copy portaudio.h and speak_lib.h
		to C:\Qt\5.2.1\mingw48_32\include

* inpout32 Serial Driver
	** download version 1.500
		from http://www.highrez.co.uk/Downloads/InpOut32/default.htm
	** copy the files inpout32.dll, inpout32.lib, and InstallDriver.exe
		to C:\Qt\5.2.1\mingw48_32\lib
		and basic256/trunk/debug
		and basic256/trunk/release
  
For MAC 10.6.4
	- QT
	- XCode (from apple)
	- MACPorts (Porticus front end is handy)
		-	flex
		-	libsdl_dev
		-	libsdl_dev-framework
		-	libsdl_mixer
		-	libsdl_mixer-framework

Build Windows MINGW, LINUX, and MACX (g++):

  open a command window (cmd)
  type "make clean" and hit enter
  type "qmake BASIC256.pro -config debug" and hit enter
     - for MACX "qmake BASIC256.pro -spec macx-g++"
  type "make" and hit enter 
  
  You'll see an executable called BASIC256 either in this directory or in a "debug" directory, depending on your version of QT.

  linux:  "make install" will install translations, help and binary  You can then create a
      launcher to "BASIC256" or "BASIC256 -l locale".

  windows (observed under vista business sp2): make will not work because of Microsoft's command
      line length issue.  A possible work around would be to use 'msys'.  It gives a unix like
	 shell to work from without the problem.

Release Build (Windows):
  To build a nice WIN32 installer use the nullsoft scriptable install system file
  3.0 or better) called BASIC256.nsi.  You must build a release copy of BASCI256.
  
  Make sure the dll and library files are copied in the folders as above. 
  
  make clean
  qmake BASIC256.pro -config release
  make release 
  
  then run the NSIS script
  
Portable Build (Windows):
  This process will populate the BASIC256Portable folder so that the "PortableApps Installer 3.x"
  will be able to create the *.paf.exe file.
  
  BE SURE TO EDIT THE VERSION NUMBER IN trunk/BASIC256Portable/App/AppInfo/appinfo.ini
  before building the PAF file.

  ** TO BUILD THE Portable BINARY and complete the directory **
 
  delete all files and folders from trunk/BASIC256Portable/App/BASIC256
  BASIC256PortableSupportFileCopy.bat
  make clean
  qmake BASIC256Portable.pro -config release
  make release 
  
      


