KDevelop 5.2.1 released

Just a few days after the release of KDevelop 5.2.0, we today provide a stabilization and bugfix release with version 5.2.1. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using KDevelop 5.2.0.

You can find the updated Windows 32- and 64 bit installers, the Linux AppImage, as well as the source code archives on our download page.

Issues fixed:

  • Fix a crash which often happened when switching git branches in the background in C++ projects. This temporarily disables documentation warnings, as well as parsed documentation display in the tooltips, until the underlying issue is fixed upstream. (bug, upstream bug)
  • Fix no compiler being set by default on Windows, causing KDevelop to fail finding the C++ standard library. (bug)
  • Fix standard library paths not being passed as include paths when using clang as compiler on windows. (review)
  • Fix a crash happening on some systems when opening a session. (bug)
  • Fix include path completion not showing project-defined system includes (i.e. includes added as system includes but by your project). (bug)
  • Fix crash when batch-editing defines in the define editor. (bug)
  • Fix an assert (only happened in debug mode) and potential crash when showing problem tooltip. (bug)
  • Fix links in documentation browser not working in the AppImage. (bug)
  • Fix build failure when building in-source when translations are present. (bug)
  • Fix a crash when showing navigation tooltip in PHP projects in some situations. (bug)
  • Fix targets being duplicated when using CMake subprojects. (bug)
  • Fix console toolview asking to delete a temporary file interactively. (bug)
  • Fix a lot of AUTOMOC warnings while compiling with CMake 3.10
  • Fix some tool view context menus having empty entries. (bug)
  • Fix the progress widget in the statusbar not showing in some sessions. (review)
  • Adapt cache clear logic to ensure that the code model cache (~/.cache/kdevduchain) is always cleared when changing to a different KDevelop version (including patch versions). Unsuitable data in the cache has caused a range of issues in the past, including crashes. If you really need to keep the cache, you can create an (empty) file with the version suffix of the target version in the cache folder.
  • Fix KDevelop not starting up with the welcome page enabled (which it is by default) on systems without OpenGL support. (bug)
  • Fix build with Qt version 5.5.
  • Fix file templates not working on Windows (this fix should be in the Windows 5.2.0 installers already, but was not in the source tarballs).

Please let us know of any issues you encounter when using KDevelop on the bug tracker, in the mailing lists for development or users (kdevelop@kde.org, kdevelop-devel@kde.org), or in the comment section of this release announcement.

We think KDevelop 5.2.1 should work quite well now, but if more issues show up, we will provide another bugfix release shortly.



I'm testing out cppcheck in the 64-bit linux AppImage, but not having any success getting it to work. I load a .cpp file in KDevelop, but if I right click on the opened file, I don't see an Analyze With menu item in the popup menu. The Code > Analyze Current File With > Analyze Current File with Cppcheck menu item is greyed out.

In the KDevelop Configure dialog, I've double checked that the Cppcheck executable points to a valid path (/usr/bin/cppcheck), and checked that cppcheck runs successfully from the command line (it does). Any thoughts on getting cppcheck to work from within KDevelop?

I've updated 5.1.2 to 5.2.1 and I now have a few problems:

a) with boost::filesystem
The code

#include <string>
#include <boost/filesystem.hpp>
void foo() {
  std::string dir = "foo";

This compiles fine, but in KDevelop it is marked red and the tooltip reads:

Problem in Semantic analysis
No matching function for call to 'create_directories'

Hint: Candidate function not viable: no known conversion from 'std::string' (aka 'basic_string') to 'const boost::filesystem::path' for 1st argument
See: operations.hpp :5
Hint: Candidate function not viable: requires 2 arguments, but 1 was provided
See: bool create_directories (const boost::filesystem::path&, boost::system::error_code&) in operations.hpp :526

Why doesn't KDevelop see the path constructor that converts from a basic_string when the compiler does?

Also, I now have problems with yaml-cpp/yaml.h:

#include <yaml-cpp/yaml.h>
// (...)
YAML::Node n;
//n is a sequence in my code, thus I can iterate:
for (const auto setting : yaml) {
        if (!(setting.IsMap()) {}

Here I get "Member reference base type 'const auto' is not a structure or union" when hovering over IsMap?! What does that mean? The code compiles fine, of course.

I've already tried to rm -r .cache/kdevduchain, but no success. Can these issues be reproduced elsewhere?

Is there any way we can change some of the font colors and styles? Changing the color of std::cout and std::vector or the boldness of the functions from what it is
here to some other colors would really be great. Thanks

I think it's a great idea to use libclang in KDevelop. However, a side-effect of this seems to be that the total installation size on Windows is now over 1GB.

What really confuses is me is that you state everywhere that "KDevelop does not include a compiler", yet the install directory contains numerous clang-related executables such as clang.exe or clang-cl.exe. These two alone take up almost 100MB of space, and there are a LOT of other clang/llvm files bundled with the installer.

Given that you only use libclang for semantic highlighting, etc, I can't help but wonder whether all these components are really necessary? Would it be possible to trim down the KDev installation on windows by removing some of these components?

Kdevelop ignores my compile_commands.json, which i need, since I have many special include paths per file in my project.

It seemed to be working with earlier version.
I am using the app-image.
Does anyone know anything about that?
What could i have done wrong?
Is there a workaround?

Ok, new release is nice, but what about us, Mac users, when we will be able to use Kdevelop 5?