Professional CMake:

A Practical Guide

Learn to use CMake effectively with practical advice from a CMake co-maintainer. You can also have the author work directly with your team!

CMake Now Available As A Snap

Last week’s Snapcraft Summit in Montreal was a fantastic opportunity to work directly with staff from Canonical and Travis CI, experienced Snapcraft users and key people from other projects, all with the goal of getting more languages and build tools supported in the snap ecosystem. It was a privilege to attend and I’m pleased to announce that as a result of that summit, CMake can now be installed as a snap on all major Linux distributions.

The CMake snap is a convenient way to stay up to date with recent CMake releases, especially where the packages provided by your Linux distribution may fall behind or are no longer being updated. By default, installed snaps automatically follow the latest stable release and will update in the background. For more control, separate channels are provided for the latest stable release, release candidates and a daily build of latest master (a.k.a edge). Feature releases also have dedicated channels to allow you to be in control of when you move from one feature release to another. Switching between channels is simple and can be done at any time, making it very convenient for temporarily testing out a release candidate or a fix from the daily builds.

The table below summarises the available channels. Click through for full details, including distribution-specific, step-by-step instructions for how to install the CMake snap (and the snapd daemon if required).

Known Issues

  • The snap system does not allow a home directory path containing a symlink. For example, a path like /export/home/mylogin where /export/home points to /home will result in an error whenever a snap tries to run its commands. Home directories other than /home/$USERNAME are also not currently supported. These constraints of snapd can be tracked in this bug report.

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.