QDir::cleanPath does not seem to take into consideration symbolic links when converting file names containing pointing to a relative path.
For instance:
QDir::cleanpath(" /bin/../lib/gcc/x86_64-redhat-linux/5.1.1/../../../../include/c++/5.1.1") returns "/include/c++/5.1.1" but this is incorrect when /lib is a symbolic link pointing to /usr/lib (Fedora 22 has this problem). Use instead QFileInfo::.canonicalFilePath which seems to do the right thing.