# Unable to understand the difference in 3.19 and 3.5.2

**URL:** https://discourse.cmake.org/t/unable-to-understand-the-difference-in-3-19-and-3-5-2/2553
**Category:** Usage
**Tags:** os:linux
**Created:** [January 15, 2021, 7:28am UTC](https://discourse.cmake.org/t/unable-to-understand-the-difference-in-3-19-and-3-5-2/2553 "2021-01-15T07:28:39Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![davas](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/d/977dab/32.png) [@davas](https://discourse.cmake.org/u/davas)
#### Post date: [January 15, 2021, 7:28am UTC](https://discourse.cmake.org/t/unable-to-understand-the-difference-in-3-19-and-3-5-2/2553/1 "2021-01-15T07:28:39Z")

</div>

Hi,

I am new to cmake and I have just started learning. So please excuse if the question is naive.

The book I am following says to use version \>= 3.5.2 and I am able to find such version here [https://github.com/Kitware/CMake/releases/tag/v3.5.2](https://github.com/Kitware/CMake/releases/tag/v3.5.2).

What I am not able to understand is the [cmake.org](http://cmake.org) web sayst the latest version is 3.19.

I am assuming that version goes up in version numbering. So how does 3.19 is latest than 3.5.2.

Perhaps I am missing some essential difference and basic knowledege of cmake structure.

Thankyou.

---

<div class="post-metadata">

### Author: ![vre](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/v/f04885/32.png) [@vre](https://discourse.cmake.org/u/vre)
#### Post date: [January 15, 2021, 8:12am UTC](https://discourse.cmake.org/t/unable-to-understand-the-difference-in-3-19-and-3-5-2/2553/2 "2021-01-15T08:12:01Z")

</div>

Version numbering is MAJOR [. MINOR [. PATCH [. TWEAK]]] .  
Minor, patch, and tweak versions could be omitted and will be zeroed then.  
Version 3 . 5 . 2 is therefore earlier (or less) than 3 . 19 [. 0]

---

<div class="post-metadata">

### Author: ![anon45792294](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/a/a587f6/32.png) [@anon45792294](https://discourse.cmake.org/u/anon45792294)
#### Post date: [January 15, 2021, 12:54pm UTC](https://discourse.cmake.org/t/unable-to-understand-the-difference-in-3-19-and-3-5-2/2553/3 "2021-01-15T12:54:00Z")

</div>

Like volker mentioned CMake uses semantic versioning:

> **[Semantic Versioning 2.0.0](https://semver.org/)**
>
> Semantic Versioning spec and website

Basically the difference between 3.19 and 3.5 is that 3.19 has **much** more features/functionality.

You can look at the release notes to see what has changed:  
[https://cmake.org/cmake/help/latest/release/index.html](https://cmake.org/cmake/help/latest/release/index.html)
