Build Instructions

From Commontk
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Home < Build Instructions

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

Prerequisites

  • git version 1.6.5 or later
  • Qt version 4.x or 5.x
  • CMake 3.0 or later

Download

Anonymous checkout behind a firewall CTK developer with write access
git clone https://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

  • For Qt5, set Qt5_DIR to C:\Qt\5.15.2\msvc2019_64\lib\cmake\Qt5
  • For Qt4, set QT_QMAKE_EXECUTABLE (qmake is usually found in the bin folder)
  • 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

See also https://docs.github.com/en/get-started/using-git

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
  • 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 required.
  • CMake: Cross-platform build system
  • Patch for Windows: Needed to apply patches to external thirdparty libraries source code

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