KDevelop crash

after tumbleweed update 20150630 i have problem when open/new project on kdevelop always crash
and when i open it from terminal:

 X Error: BadWindow (invalid Window parameter) 3 
  Major opcode: 20 (X_GetProperty) 
  Resource id:  0x3a0015c 
kdevelop(9048)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x62d3b30) registered - this might lead to crashes on shutdown.  
Path::init: invalid/unsupported Path encountered: "" 
Path::init: invalid/unsupported Path encountered: "" 
Path::init: invalid/unsupported Path encountered: "" 
KCrash: Application 'kdevelop' crashing... 
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit 
KCrash: Connect sock_file=/home/the-laptop/.kde4/socket-linux-ek4g.site/kdeinit4__0 
QSocketNotifier: Invalid socket 7 and type 'Read', disabling... 
QSocketNotifier: Invalid socket 13 and type 'Read', disabling... 
QSocketNotifier: Invalid socket 32 and type 'Read', disabling... 
QSocketNotifier: Invalid socket 35 and type 'Exception', disabling... 
QSocketNotifier: Invalid socket 22 and type 'Read', disabling... 
QSocketNotifier: Invalid socket 14 and type 'Read', disabling... 
kdevelop: Fatal IO error: client killed 
DUContextData::m_childContexts There were items left on destruction: 2 
TopDUContextData::m_problems There were items left on destruction: 3 
DUContextData::m_uses There were items left on destruction: 49 
TopDUContextData::m_usedDeclarationIds There were items left on destruction: 48 
DUContextData::m_localDeclarations There were items left on destruction: 19 
DUContextData::m_importers There were items left on destruction: 54 
DUContextData::m_importedContexts There were items left on destruction: 55 
Unable to start Dr. Konqi



same problem on new user

what should i do?

Try to run it in gdb and get a backtrace. Strange that drkonqi doesn’t seem to work too, though.

Maybe another one of those GCC4/GCC5 incompatibilities?

What repos are you using?

zypper lr -d

Where did you install kdevelop from?

If it’s from the standard OSS repo, try the one from KDE:Extra (do a full switch to the repo).

gdb backtrace:

 #0  0x00007fff3da73b00 in  () at /usr/lib64/libkdev4cppduchain.so 
#1  0x00007fff3da9e69a in CppPreprocessEnvironment::merge(Cpp::EnvironmentFile const*, bool) () at /usr/lib64/libkdev4cppduchain.so 
#2  0x00007fff3dd42889 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#3  0x00007fff3d5736ec in rpp::pp::handle_include(bool, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#4  0x00007fff3d57786f in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#5  0x00007fff3d577e1e in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#6  0x00007fff3d578134 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () at /usr/lib64/libkdev4cpprpp.so 
#7  0x00007fff3d5784d5 in rpp::pp::processFile(QString const&, QByteArray const&) () at /usr/lib64/libkdev4cpprpp.so 
#8  0x00007fff3dd45114 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#9  0x00007fff3dd3956e in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#10 0x00007fff3dd432b9 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#11 0x00007fff3d5736ec in rpp::pp::handle_include(bool, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#12 0x00007fff3d57786f in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#13 0x00007fff3d577e1e in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#14 0x00007fff3d578134 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () at /usr/lib64/libkdev4cpprpp.so 
#15 0x00007fff3d5784d5 in rpp::pp::processFile(QString const&, QByteArray const&) () at /usr/lib64/libkdev4cpprpp.so 
#16 0x00007fff3dd45114 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#17 0x00007fff3dd3956e in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#18 0x00007fff3dd432b9 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#19 0x00007fff3d5736ec in rpp::pp::handle_include(bool, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#20 0x00007fff3d57786f in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#21 0x00007fff3d577e1e in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#22 0x00007fff3d578134 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () at /usr/lib64/libkdev4cpprpp.so 
#23 0x00007fff3d5784d5 in rpp::pp::processFile(QString const&, QByteArray const&) () at /usr/lib64/libkdev4cpprpp.so 
#24 0x00007fff3dd45114 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#25 0x00007fff3dd3956e in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#26 0x00007fff3dd432b9 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#27 0x00007fff3d5736ec in rpp::pp::handle_include(bool, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#28 0x00007fff3d57786f in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#29 0x00007fff3d577e1e in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#30 0x00007fff3d578134 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () at /usr/lib64/libkdev4cpprpp.so 
#31 0x00007fff3d5784d5 in rpp::pp::processFile(QString const&, QByteArray const&) () at /usr/lib64/libkdev4cpprpp.so 
#32 0x00007fff3dd45114 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#33 0x00007fff3dd3956e in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#34 0x00007fff3dd432b9 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#35 0x00007fff3d5736ec in rpp::pp::handle_include(bool, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#36 0x00007fff3d57786f in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#37 0x00007fff3d577e1e in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#38 0x00007fff3d578134 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () at /usr/lib64/libkdev4cpprpp.so 
#39 0x00007fff3d5784d5 in rpp::pp::processFile(QString const&, QByteArray const&) () at /usr/lib64/libkdev4cpprpp.so 
#40 0x00007fff3dd45114 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#41 0x00007fff3dd3956e in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#42 0x00007fff3dd432b9 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#43 0x00007fff3d5736ec in rpp::pp::handle_include(bool, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#44 0x00007fff3d57786f in rpp::pp::handle_directive(unsigned int, rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#45 0x00007fff3d577e1e in rpp::pp::operator()(rpp::Stream&, rpp::Stream&) () at /usr/lib64/libkdev4cpprpp.so 
#46 0x00007fff3d578134 in rpp::pp::processFileInternal(QString const&, QByteArray const&, QVector<unsigned int>&) () at /usr/lib64/libkdev4cpprpp.so 
#47 0x00007fff3d5784d5 in rpp::pp::processFile(QString const&, QByteArray const&) () at /usr/lib64/libkdev4cpprpp.so 
#48 0x00007fff3dd45114 in  () at /usr/lib64/kde4/kdevcpplanguagesupport.so 
#49 0x00007fffea7942f2 in  () at /usr/lib64/libthreadweaver.so.4 
#50 0x00007fffea7944de in ThreadWeaver::Job::execute(ThreadWeaver::Thread*) () at /usr/lib64/libthreadweaver.so.4 
#51 0x00007fffea795fdb in  () at /usr/lib64/libthreadweaver.so.4 
#52 0x00007fffea793c0b in ThreadWeaver::Thread::run() () at /usr/lib64/libthreadweaver.so.4 
---Type <return> to continue, or q <return> to quit--- 
#53 0x00007ffff4d1123c in  () at /usr/lib64/libQtCore.so.4 
#54 0x00007ffff235c324 in start_thread () at /lib64/libpthread.so.0 
#55 0x00007ffff465275d in clone () at /lib64/libc.so.6



repo list

 #  | Alias                               | Name                               | Enabled | GPG Check | Refresh | Priority | Type   | URI                                                         
                     | Service 
---+-------------------------------------+------------------------------------+---------+-----------+---------+----------+--------+-------------------------------------------------------------
---------------------+-------- 
 1 | Packman Repository                  | Packman Repository                 | No      | ----      | Yes     |   98     | rpm-md | http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_13.1/    
                     |         
 2 | Tumbleweed                          | Tumbleweed                         | No      | ----      | Yes     |   97     | rpm-md | http://download.opensuse.org/repositories/openSUSE:/Tumblewe
ed/standard/         |         
 3 | games                               | games                              | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/games/openSUSE_Tum
bleweed/             |         
 4 | google-talkplugin                   | google-talkplugin                  | Yes     | ( p) Yes  | Yes     |   99     | rpm-md | http://dl.google.com/linux/talkplugin/rpm/stable/x86_64     
                     |         
 5 | home:ecsos                          | home:ecsos                         | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/ecsos/openSU
SE_Tumbleweed/       |         
 6 | http-download.opensuse.org-4d732a08 | openSUSE:Factory                   | Yes     | (r ) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/tumbleweed/repo/oss/           
                     |         
 7 | http-download.opensuse.org-76633f80 | GNOME:Apps                         | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/GNOME:/Apps/openSU
SE_Factory/          |         
 8 | http-download.opensuse.org-f4583f14 | server:dns                         | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/server:/dns/openSU
SE_Factory/          |         
 9 | openSUSE Current OSS                | openSUSE Current OSS               | No      | ----      | Yes     |   98     | yast2  | http://download.opensuse.org/distribution/openSUSE-current/r
epo/oss/             |         
10 | openSUSE Current OSS updates        | openSUSE Current OSS updates       | No      | ----      | Yes     |   98     | rpm-md | http://download.opensuse.org/update/openSUSE-current/       
                     |         
11 | openSUSE Current non-OSS            | openSUSE Current non-OSS           | No      | ----      | Yes     |   98     | yast2  | http://download.opensuse.org/distribution/openSUSE-current/r
epo/non-oss/         |         
12 | openSUSE Current non-OSS updates    | openSUSE Current non-OSS updates   | No      | ----      | Yes     |   98     | rpm-md | http://download.opensuse.org/update/openSUSE-non-oss-current
/                    |         
13 | openSUSE_Factory                    | Emulators                          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/Emulators/openSUSE
_Factory/            |         
14 | openSUSE_Tumbleweed                 | openSUSE_Tumbleweed                | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/4144/openSUS
E_Tumbleweed/        |         
15 | openSUSE_Tumbleweed_1               | Pacman Tumbleweed                  | No      | ----      | Yes     |   99     | rpm-md | http://packman.inode.at/suse/openSUSE_Tumbleweed/           
                     |         
16 | packman-essentials                  | packman-essentials                 | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://mirror.karneval.cz/pub/linux/packman/suse/openSUSE_Tu
mbleweed/Essentials/ |         
17 | repo-debug                          | repo-debug                         | Yes     | (r ) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/tumbleweed/repo/debug          
                     |         
18 | repo-debug-update                   | openSUSE-13.1-Update-Debug         | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/debug/update/13.1/             
                     |                                                                                                                                                                           
19 | repo-debug-update-non-oss           | openSUSE-13.1-Update-Debug-Non-Oss | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/debug/update/13.1-non-oss/     
                     |                                                                                                                                                                           
20 | repo-non-oss                        | repo-non-oss                       | Yes     | ( p) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/tumbleweed/repo/non-oss        
                     |                                                                                                                                                                           
21 | repo-source                         | openSUSE-13.1-Source               | No      | ----      | Yes     |   99     | NONE   | http://download.opensuse.org/source/distribution/13.1/repo/o
ss/                  |                                                                                                                                                                           
22 | repo-update                         | openSUSE-13.1-Update               | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/update/13.1/                   
                     |                                                                                                                                                                           
23 | repo-update-non-oss                 | openSUSE-13.1-Update-Non-Oss       | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/update/13.1-non-oss/           
                     |                                                                                                                                                                           
24 | standard                            | standard                           | Yes     | ( p) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/tumbleweed/        


sorry

yes it from standard oss repo
i will inform later after i finish add KDE:Extra and zypper dup

i’m already do switch to http://download.opensuse.org/repositories/KDE:/Extra/openSUSE_Tumbleweed/ from yast
and i still cant use kdevelop with same problem

i’m afraid only me have this problem…

Well, it (the version from KDE:Extra) works fine here on 13.2.
I can’t test on Tumbleweed at the moment.

Regarding your backtrace:
you called “bt” in gdb for that after it crashed, right?
Then it seems to be crashing in the CPP (C++) language support plugin.

Do you open an existing session? Does it also crash with a new one (i.e. choose “KDevelop4 (Pick Session)” in the K-Menu)? (probably, as you say it crashes for a new user too)

Try to remove the package kdevelop4-plugin-cppsupport, does it still crash then?

sudo rpm -e --nodeps kdevelop4-plugin-cppsupport

Do you have any problems with other KDE4 applications?

I found this bug report btw which has the same backtrace AFAICT, so it seems you are not the only one (or did you file that?):
https://bugs.kde.org/show_bug.cgi?id=349870

PS: Your crashes might be related to this:
http://quickgit.kde.org/?p=kdevplatform.git&a=commit&h=e22645664c263884c7c3013fb07607304b6b0718

Remove unsafe function that returns reference to const.

This is undefined behavior, and newer compilers are emitting code
which leads to crashes then - and this is our fault, not theirs.

Might fit the situation because the default compiler was switched to the latest GCC 5.1 recently and the whole distribution rebuilt with it.

Unfortunately, it’s not just that one commit that’s necessary for a fix. There are several other commits that remove the usage of that function.
And those fixes have not been backported to the 1.7/4.7 branch either (yet?).
I’ll try to put together a package for you to test, but it might take a while.

after run this command my kdevelop run without crash again :smiley:
and without c++ support too
such us code completion, code highlight, etc
i love those features :frowning:

yes, i have krita
i just try it and running well without problem

whoa thx
i love to see that package :smiley:

Yeah, of course.
As I said, that’s the C++ language support that you removed. But better than crashing, isn’t it? :wink:

Meanwhile I am pretty sure that these upstream commits should fix your crash:
http://quickgit.kde.org/?p=kdevelop.git&a=commit&h=6ef7b373a2284e24753b6eb249ba68da5d9a2444
http://quickgit.kde.org/?p=kdevelop.git&a=commit&h=2f057e2190112e5e838ad7a04eb04a6fde6f2cde

The first one is part of the 1.7 git branch, I tried to backport the second one too but couldn’t get kdevelop to build so far (I get some weird compiler errors).

The best I can offer you for now is the KF5 based version:
http://software.opensuse.org/download.html?project=home%3Awolfi323%3Abranches%3AKDE%3AFrameworks5&package=kdevelop5
(use the version for Tumbleweed, not Factory)
This package is coinstallable with the KDE4 version and contains the latest git master branch, where these crashes should be fixed since a few days.
You should better add the repo to your system, because kdevelop consists of more than one package.

yes, i have krita
i just try it and running well without problem

Right. This is a bug in kdevelop that’s only triggered when compiling it with gcc5.

Ok, I finally got the patch to build…

Please install kdevelop4-plugin-cppsupport from here:
http://download.opensuse.org/repositories/home:/wolfi323:/branches:/KDE:/Extra/openSUSE_Tumbleweed/

I cannot guarantee you that I didn’t introduce some bug ;), but I quickly tested it here on my 13.2 system, and KDevelop still started and could read in a C++ project (kde-workspace :wink: ), highlight a source file and show context help.

whoa thx this is really helpful
now my kdevelop not crash on opening project

maybe if i found another problem again i will ask here again…

Ok, thanks for the feedback! :slight_smile:

As indicated I’m not really confident of my patch though.
I would prefer if upstream would backport it themselves to the 4.7 branch, they know the code better than me…
But if necessary, I will commit my version to Tumbleweed, and maybe ask for review upstream (probably I’d do the latter first, don’t know yet).