Linux: Changes to project source files not being picked up by UBT

I am using Ubuntu 14.04 LTS with UE 4.10 and kdevelop.

Apparently my setup is working fine, I can build the engine, build my project and run the editor. Everything works as expected.

If I make a change in a cpp file (an actor for example), hit build and execute in kdevelop, everything looks ok, MyProject.cpp seems to recompile and link, and a minute later the editor fires up and apparently all is fine. But the change I made to the cpp file is not there! Even if I compile from the editor the change is not picked up and I get a stale version of my project.

Even if I run generateProjectFiles on my project and recompile I get the old version. A clean project from kdevelop seems to recompile the engine, not just the project, which takes a long time and obviously I get the new correct version with the changes.

The workaround I have found is to delete the libUE4Editor-MyProject-Linux-DebugGame.so file from my project Binaries folder. Then, I hit run in kdevelop even without building first and the editor complains about libUE4Editor-MyProject-Linux-DebugGame.so missing or being out of date and asks if I want to rebuild it. I hit yes and everything goes as expected and I get the editor with the expected changes.

Hot reload does not work with kdevelop and actually it doesn’t work good on gnux anyway. You have to restart the editor with your project again to see your change.

Actually the original question was about restarting the editor, recompiling in kdevelop and not seeing any change.

I’ve actually solved the issue, it turns out I had run GenerateProjectFiles with just the .uproject file as a parameter. When I added “-game MyGameName”, I started seeing the changes.

Maybe the documentation should point this in a clearer way.