/workbench

Connectome Workbench

Primary LanguageC++GNU General Public License v2.0GPL-2.0

Connectome Workbench requires QT4 to compile.  Recommended is the latest 4.8.x release.  The following configure options were used on linux for our builds:

-system-zlib -webkit -qt-libmng -qt-libpng -qt-libtiff -qt-libjpeg -nomake demos -nomake examples -no-qt3support -no-dbus -opensource -exceptions -stl -no-multimedia -no-phonon -no-audio-backend -openssl

Optionally, it can use OSMesa, which allows the -show-scene command to work.  Use it by setting OSMESA_DIR as an environment variable, such that $OSMESA_DIR/include/GL/osmesa.h exists, before running cmake.

It is compiled using cmake, on linux do:

mkdir build
cd build
cmake ../src
#OR
cmake-gui ../src
make [-j cores]

For other OSes, see http://www.cmake.org/cmake/help/runningcmake.html

You may want to set CMAKE_BUILD_TYPE to Release or Debug before building, as the default build behavior may be non-optimized and without debug symbols.

This produces 3 executables, 2 of which are useful to the end user (Desktop/wb_view, CommandLine/wb_command), and one for running internal tests (Tests/test_driver).

To run the (few) tests available:

ctest
#OR
make test

To install wb_view and wb_command with the prefix configured in CMAKE_INSTALL_PREFIX:

make install

It should be noted that wb_import, provided in the HCP binary releases of Connectome Workbench, is actually part of caret5 (http://brainvis.wustl.edu/wiki/index.php/Caret:Download).

Connectome Workbench itself is copyright 2014-2015 Washington University School of Medicine, licensed under GPLv2 or later, see LICENSE file

Some included code/files are from third party sources, with the following licenses:

Quazip/*:
QuaZIP 0.6, http://quazip.sourceforge.net/
Copyright (C) 2005-2012 Sergey A. Tachenov
Copyright (C) 1998-2010 Gilles Vollant
Copyright (C) 2009-2010 Mathias Svensson
Copyright (C) 2007-2008 Even Rouault
Copyright (c) 1990-2000 Info-ZIP
licensed under LGPLv2 and zlib, see Quazip/COPYING, Quazip/quazip.h, Quazip/zip.h and Quazip/unzip.c

Qwt/*:
Copyright (C) 1997   Josef Wilgen
Copyright (C) 2002   Uwe Rathmann
Qwt 6.0.1, http://qwt.sourceforge.net/
licensed under Qwt license v1.0 (LGPLv2.1, with exceptions), see src/Qwt/COPYING
some unneeded files removed

FtglFont/*:
FTGL library
Copyright (C) 2001-2004 Henry Maddocks <ftgl@opengl.geek.nz>
Copyright (C) 2008 Daniel Remenak <dtremenak@users.sourceforge.net>
Copyright (C) 2008 Éric Beets <ericbeets@free.fr>
Copyright (C) 2008 Sam Hocevar <sam@zoy.org>
Copyright (C) 2008 Sean Morrison <learner@brlcad.org>
licensed under Expat, see FtglFont/COPYING

Common/Base64.*, Common/DataCompressZLib.*, Common/MathFunctions.*, Nifti/Matrix4x4.cxx:
use code from VTK, http://www.kitware.com/opensource/vtk.html or http://www.vtk.org/
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
originally licensed under BSD 3-clause, see http://www.kitware.com/Copyright.htm or http://www.vtk.org/VTK/project/license.html

GuiQt/WuQDialog.cxx, Brain/FtglFontTextRenderer.cxx:
copied some code from from QT4, https://qt-project.org/
Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
originally licensed LGPLv2.1 (or GPLv3, or a commercial license)
modified to change some UI behaviors otherwise hardcoded into QT classes

Files/SignedDistanceHelper.cxx, Algorithms/AlgorithmVolumeToSurfaceMapping.cxx:
make use of PNPOLY, http://www.ecse.rpi.edu/~wrf/Research/Short_Notes/pnpoly.html
Copyright (c) 1970-2003, Wm. Randolph Franklin
originally licensed with 3-clause BSD/MIT license, see files in question
rewritten for different argument types, modified

Resources/FtglFonts/Vera*.ttf
Copyright (c) 2003 Bitstream, Inc.