How to build Julius
=====================

This document describes how to build Julius on several platform.
See each section for details.

After build, compiled binaries of Julius and tools will be placed in
their respective directories.  You can run "make install" will install
binaries into system directries:

  ${prefix}/bin      executables
  ${prefix}/lib      libraries
  ${prefix}/include  headers

"${prefix}" will be "/usr/local" by default.  You can change it by
specifying "--prefix=..." to configure script.

  % ./configure --prefix=/opt


-----------------------------------------------
Linux  (tested on Ubuntu-14.04)

  % sudo apt-get install build-essential zlib1g-dev libsdl2-dev
  % sudo apt-get libasound2-dev (or libpulse-dev, whichever you like)
  % ./configure
  % make
  % (optional) make install

-----------------------------------------------
Cygwin

  Required packages:

    gcc-core
    make
    zlib-devel
    libSDL2-devel
    pkg-config
    perl

  On cygwin terminal, do

    % ./configure
    % make
    % (optional) make install

(tested on cygwin-x86 setup-v2.5.2, 08/31/2016)

-----------------------------------------------
Mingw on cygwin

  Required packages (also cygwin packages above are required)

    mingw64-i686-gcc-core
    mingw64-i686-zlib
    mingw64-i686-SDL2
    mingw64-i686-pkg-config

  On cygwin terminal, do

    % ./configure --host=i686-w64-mingw32 --disable-sdlmain
    % make

  If "adintool-gui.exe" fails or not run, try without "--disable-sdlmain".

(tested on cygwin-x86 setup-v2.5.2, 08/31/2016)
-----------------------------------------------
Visual Studio:

  1. Open msvc/JuliusLib.sln
  2. Choose build type to "Release"
  3. Build

The compiled binaries will be placed in "msvc/Release" folder.

SIMD instruction is fixed for AVX by default.
You can change it at "libsent"'s project property:
  C/C++ -> Code Generation -> Enable Enhanced Instruction Set
