Finestructure Icon
© 2012 Daniel Lawson.
Website template by Arcsin
Important Note: fs2 includes ChromoPainter, which have different licences and authors. Both are free for Academic use only, and explicitly exclude commercial applications. See the file COPYING in the download for details.

Please consider Registering, if you have not already done so.

NB Installation instructions are below: Linux and Mac OS X should work fully. There is very limited support for Windows (but full support if you use cygwin).

What you need

  • FineSTRUCTURE v2 command line tools for your processing machine.
  • FineSTRUCTURE GUI or R library for visualisation, on your local machine.
  • GLOBETROTTER for performing admixture dating. You will also need a separate ChromoPainter v2 for this analysis. (NB FineSTRUCTURE comes with a simplified version of ChromoPainter).
  • FineSTRUCTURE v2

    Current source code download. This includes the source for the command-line version of fineSTRUCTURE version 2 and all the important scripts.
    See the manual for usage - it is now really very easy for small datasets!


    IMPORTANT NOTE: The GUI is ONLY for visualising the result of the final FineSTRUCTURE stage. You MUST USE the command line version above for the analysis!
    Current source code download. This provides the GUI source code for Linux (somewhat cygwin/mac compatable, if you know what you are doing; see below).
    Windows Installer.
    Windows Zip file.

    Installing FineSTRUCTURE v2 for Linux / source (GUI and Command line)

    Dependencies for the command line version:
    • GNU Scientific Library (GSL, development version package libgsl0-dev and libgsl0 in Ubuntu, gsl-devel in OpenSUSE)
    • GCC c++ compiler (package build-essential in ubuntu)
    • Zlib zip library (package zlib1g-dev in ubuntu)
    Installation Instructions for command line:
    tar -xzvf fs-2.1.3.tar.gz # (check correct version)
    cd fs-2.1.3
    sudo make install # optional; installs the fs executable

    Installing FineSTRUCTURE GUI for Linux / source (GUI and Command line)

    Dependencies for the GUI:
    • GNU Scientific Library (GSL, development version as above)
    • automake (package automake in Ubuntu and OpenSUSE)
    • wxwidgets 3.0.0+ (packages libwxgtk3.0-dev and wx-common in Ubuntu, wxGTK-devel in OpenSUSE; WARNING: This has many dependencies.)
    • GCC c++ compiler (as above)
    Installation Instructions for the GUI:
    Assuming that you are continuing from a successful compilation of the command line version:
    tar -xzvf finestructure-0.1.0GUI.tar.gz # (check correct version)
    cd finestructure-0.1.0/gui
    sudo make install # optional; installs finegui exceutable

    Installing FineSTRUCTURE GUI for Windows

    Windows users should use the installer above, which includes the GUI manual and example (linked from the program menu in "Finestructure GUI"). An executable version is provided in the zip file in case you don't have install permissions.

    You may also compile from source; you will need wxwidgets, a compiler such as MinGW and (optionally) a build environment such as Code::Blocks.

    Installing Finestructure v2 for Mac

    Compilation on the Mac works as for Linux (for 10.10). Instructions for fs2.0 command line, assuming that you are going to use homebrew, Macports requirements are given belows and you can even manually install the requirements):
    • Install xcode from Apple Store (interactive procedure)
    • Open terminal
    • Install xcode command line version (interactive procedure) sudo xcodebuild -license
      xcode-select --install
    • Install homebrew (interactive procedure - needed for GSL and optionally for parallel processing support)
    • ruby -e "$(curl -fsSL"
    • Get GSL
    • brew install gsl
    • Optionally, obtain a compiler that can handle OpenMP (warning: this can take a while, about 30 mins on an i7 2015 macbook pro)
    • brew reinstall gcc --without-multilib
    • Download the latest version of fs from this page curl -O
      tar -xzvf fs-2.1.3.tar.gz
      cd fs-2.1.3
      # ./configure CXX=g++-5 # if you downloaded the newer version of gcc using
      # brew (this may eventually change version number, specify the correct one)
      ./configure # if you are compiling with Apple's default compiler, you can just
      # do ./configure && make
    • Optionally, add fs to your path. # edit your .bashrc file so that ~/bin is in the PATH
      # export PATH="$PATH:$HOME/bin"
      cp fs ~/bin
    Requirements (thanks to John Didion!) using macports (or manual installation of these packages):
    • MacPorts from
    • GCC: sudo port install gcc46
    • GSL: sudo port install gsl-devel

    Installing Finestructure GUI for Mac

    • Install wxwidgets: brew install wxwidgets
    • Download the latest version of the GUI from this page:
    • curl -O
      tar -xzvf finestructure-0.1.0GUI.tar.gz
      cd finestructure-0.1.0/gui
      ./configure # make sure to use the default compiler here!
    • Optionally, copy to your path: cp finegui ~/bin

    Perl woes

    You may get a weird error when you use these perl scripts, starting with the line: Can't locate in @INC (you may need to install the Switch module) The solution is to install it! For Mac and linux, this is as easy as: sudo cpan -f Switch You get asked a lot of questions, which I answered with the defaults. I then had to run this line *again* and do source ~/.bashrc # which I symlinked to .bash_profile


    See the GLOBETROTTER page for details.

    Further information

    Binaries for Linux can be provided on request but there is no guarantee we will be able to build for your environment. We will do our best to support you if you are having installation problems.

    Note that the software is currently in an early public beta; all problems should be reported, however minor. The fineSTRUCTURE software was written by Dan Lawson. It s published under a Non-free licence; note that this is a change from the previous version!

    For any queries regarding the software, please contact DL at: Please consider Registering, if you have not already done so; the mailing list is a good place to get help.