Build Instructions

From Commontk
Jump to navigationJump to search
Home < Build Instructions

The following instructions are valid as of October 2012 (if something is incorrect, please report an issue).

Prerequisties

  • git version 1.6.5 or later
  • Qt version 4.x (4.6.3 or later).
  • CMake 2.8.4 or later

Download

Anonymous checkout Anonymous checkout behind a firewall CTK developer with write access
git clone git://github.com/commontk/CTK.git
git clone http://github.com/commontk/CTK.git
git clone git@github.com:commontk/CTK.git

Build with CMake

mkdir CTK-superbuild
cd CTK-superbuild
ccmake ../CTK
make

CMake Configuration

  • set QT_QMAKE_EXECUTABLE for 4.6 development install if needed (use {path/to/qt}/bin/qmake not {path/to/qt}/qmake/qmake)
  • turn on the parts of CTK you want to build

How to use CTK ?

See the Examples project that illustrates how CTK can be integrated into applications.

Contribute

Simple Git

These are shortcuts for people used to the 'cvs or svn style' of source code management:

Checkout

  • checkout
git clone git@github.com:commontk/CTK.git

(or use anonymous option listed above)

Update

git pull --rebase

Commit

  • commit (commit is to local version, push sends it to upstream server)
git add <changed files>
git commit -m <message>
git push

Intermediate Git

  • check update before merging (look at diff):
git fetch
git diff origin master
git rebase
  • Making a repository hosted on github that can track git.vtk.org [1]
  • If you have changes pending that you aren't ready to commit, you can't rebase on top of them unless you do this:
git stash
git pull --rebase
git stash pop
  • to get the code from a branch
git clone <repository> <dir>
cd <dir>
git checkout origin/<branchname>

Links

List of needed tools and libraries used when building CTK:

  • Git: To download source code
  • Qt: Dependency needed. You need to compile it in your machine before building CTK
  • CMake: Cross-platform build system
  • Patch for Windows: Needed to apply patches to external thirdparty libraries source code
  • SVN: To update some third-party libraries automatically like PythonQt
  • CVS: To update some third-party libraries automatically like KWStyle

Optional:

  • Python: If you plan to use Scripting
  • DoxyGen: To generate documentation from source code on your machine
  • GraphViz: To generate documentation from source code on your machine