Table of Contents
Downloading CP2K
What can be downloaded ?
The source of CP2K is open and freely available for everybody under the GPL license.
Installation instructions can be found on the wiki and in the INSTALL.md file which is part of the download.
The sparse matrix library DBCSR is part of CP2K, and made available standalone at the DBCSR page.
Available versions of CP2K
Development Version | Released Version |
---|---|
|
|
Looking at the version history might help you to decide.
How to download
From an official release
Sources of released versions are available at our GitHub project page. Please use the versioned tarballs (cp2k-X.Y.tar.bz2
).
Alternatively, precompiled single node, optimised CP2K versions for Linux support are available as well.
From a Distribution
From a third party
- Debian/Ubuntu alternative: http://packages.mccode.org/
Install CP2K on other Operating Systems
Git Access
The Git (git
) program must be installed on your machine for this to work.
Initial checkout
The latest and all prior versions are available from the CP2K GitHub repository.
To clone the current master:
git clone --recursive https://github.com/cp2k/cp2k.git cp2k
or to directly checkout a branch (check the CP2K GitHub project page for available branches):
git clone --recursive -b support/v2024.3 https://github.com/cp2k/cp2k.git cp2k
Keeping your clone up-to-date (Git >= 2.14)
Set the following once on your CP2K Git clone. It will tell Git to automatically update included submodules as well and to always use rebase instead of merge.
cd cp2k git config submodule.recurse true git config pull.rebase true
After setting this option, update with the following:
cd cp2k git pull
If you want to set the options globally (valid for all Git commands on your machine), you can use the --global
parameter for git config
:
git config --global submodule.recurse true git config --global pull.rebase true
Keeping your clone up-to-date (Git < 2.14)
Set the following once on your CP2K Git clone. It will tell Git to always use rebase instead of merge.
cd cp2k git config pull.rebase true
After setting this option, update with the following:
cd cp2k git pull git submodule update --recursive