Setting up Code::Blocks to compile Fractint port to SDL

Windows:
Download from:
 http://www.codeblocks.org/downloads/5

For Windows XP / Vista / 7 / 8.x /10:
 codeblocks-17.12-setup.exe

Run this file to install.  I picked the default installation.

For Windows SDL (32-bit):
Download from:
 www.libsdl.org/download-2.0.php

 SDL2-devel-2.0.4-mingw32.tar.gz (Mingw 32/64-bit)
  Unpack to C:\SDL.  Will create C:\SDL\SDL-2.0.4.
  The i686-w64-mingw32 subfolder contains the 32-bit files we need.

 SDL2-2.0.4-win32-x86.zip
  Contains SDL.dll, which must be in your working directory
   (Will be included in fractint svn checkout)

For SDL_ttf:
Download from:
 www.libsdl.org/projects/SDL_ttf/

 SDL2_ttf-devel-2.0.14-mingw.tar.gz (MinGW 32/64-bit)
  Unpack to c:\SDL.  Will create c:\SDL\SDL2_ttf-2.0.14
  The i686-w64-mingw32 subfolder contains the 32-bit files we need.

 SDL2_ttf-2.0.14-win32-x86.zip
  Unpack and from .\SDL2_ttf-2.0.14\i686-w64-mingw32\bin copy the following
  to your working directory:
    SDL2_ttf.dll
    libfreetype-6.dll
    zlib1.dll
  (All are included in fractint svn checkout)


Windows Project options:

Under Compiler settings
  Other compiler options:
    -fno-builtin
   Defines:
    __USE_MINGW_ANSI_STDIO

Under Linker settings
  Link libraries:
    mingw32
    SDL2main
    SDL2
    SDL2_ttf

Under Search directories
  Compiler
    C:\SDL\SDL2-2.0.7\i686-w64-mingw32\include\SDL2
    C:\SDL\SDL2_ttf-2.0.14\i686-w64-mingw32\include\SDL2
    headers
  Linker
    C:\SDL\SDL2-2.0.7\i686-w64-mingw32\lib
    C:\SDL\SDL2_ttf-2.0.14\i686-w64-mingw32\lib

These should all be set if you open the fractint.workspace in Code::Blocks


For Windows SDL (64-bit):
NOTE: This does not yet work!

Download from SourceForge:
 mingw-w64-install.exe
  Run and install using all the defaults.

Download from:
 www.libsdl.org/download-2.0.php

 SDL2-devel-2.0.6-mingw32.tar.gz (Mingw 32/64-bit)
  Unpack to C:\SDL.  Will create C:\SDL\SDL-2.0.6.
  The x86_64-w64-mingw32 subfolder contains the 64-bit files we need.

 SDL2-2.0.6-win32-x64.zip
  Contains the 64-bit SDL.dll, which must be in your working directory

For SDL_ttf:
Download from:
 www.libsdl.org/projects/SDL_ttf/

 SDL2_ttf-devel-2.0.14-mingw.tar.gz (MinGW 32/64-bit)
  Unpack to c:\SDL.  Will create c:\SDL\SDL2_ttf-2.0.14
  The x86_64-w64-mingw32 subfolder contains the 32-bit files we need.

 SDL2_ttf-2.0.14-win32-x64.zip
  Unpack copy to your working directory

Windows Project options:

Under Compiler settings
  Other compiler options:
    -fno-builtin
  #defines:
    __USE_MINGW_ANSI_STDIO

Under Linker settings
  Link libraries:
    mingw32
    SDL2main
    SDL2
    SDL2_ttf

Under Search directories
  Compiler
    C:\SDL\SDL2-2.0.6\x86_64-w64-mingw32\include\SDL2
    C:\SDL\SDL2_ttf-2.0.14\x86_64-w64-mingw32\include\SDL2
    headers
  Linker
    C:\SDL\SDL2-2.0.6\x86_64-w64-mingw32\lib
    C:\SDL\SDL2_ttf-2.0.14\x86_64-w64-mingw32\lib

These should all be set if you open Fractint-64.cbp in Code::Blocks


Linux:

Run: sudo apt-get install build-essential

The following packages (and their dependencies) are needed:
  codeblocks
  libsdl2-dev
  libsdl2-2.0-0
  libsdl2-ttf2.0-0
  libsdl2-ttf-dev

Ubuntu 14.04 has these packages, 16.04 does not, 18.04 does.
For development work:
  On a Debian based system (like Ubuntu):
  Need to run: sudo apt-get install libsdl2-dev
  Need to run: sudo apt-get install libsdl2-ttf-dev

For general users:
  On a Debian based system (like Ubuntu):
  Need to run: sudo apt-get intall libsdl2-2.0
  Need to run: sudo apt-get install libsdl2-ttf2.0-0

  See wiki.libsdl.org/installation

Linux Project options:

Compiler settings:

  Other options:
    -fno-builtin
    `sdl2-config --cflags --libs`

  #defines:
    XFRACT

Search directories:

  headers
  /usr/include/SDL2

Linker settings:
  Link libraries:
  /usr/lib/x86_64-linux-gnu/libSDL2main.a
  /usr/lib/x86_64-linux-gnu/libSDL2.so
  /usr/lib/x86_64-linux-gnu/libSDL2_ttf.so

  Other linker options:
  -no-pie              *** this is needed for now due to parserax-64 ***

These should all be set if you open the xfractint.workspace in Code::Blocks



For help with SDL, start with:
http://wiki.libsdl.org/FrontPage

