Other IDE and compilers support

Is there planned to make possible to use other (more comfortable than Visual Studio) IDEs and compilers? Such as QtCreator and MinGW, for example. I don’t like Visual Studio and don’t want to install it. And (as far as I know) GCC/MinGW have better C++11 support. QtCreator is free and open-source. I use Linux (Kubuntu) as main OS, and Windows is my secondary OS. I will be very thankful and happy if I it will be possible to use editor under Linux (without rebooting) or, at least, use IDE to which I am accustomed.

And (sorry for long and complex question) have you any information about possibility to use UE4 at Linux under Wine? Currently I am don’t have time to check this.

We of course support a range of compilers, although mostly on other platforms than Windows (there is an experimental support for compiling for Windows with clang, though). As for other IDEs, we are going to support generating CMake projects from UBT, thus you will have a lot of options.

Other platforms now is only Mac, isn’t it? Linux editor didn’t ready at this moment, as I understand.

Is this features (other compilers, cmake) in roadmap, or in backlog? What’s the timeline on them, if any?

Not only Mac, since the engine can be (cross-)compiled to target Mac, IOS, Linux, Android and console platforms, so we support a number of toolchains. While you cannot compile Linux editor at the moment, you can compile Linux server, and will be shortly able to compile Linux (standalone) client.

As for CMake, supporting it is in plans, but I cannot provide any specific timeline as of now.

There was a recent commit… Can’t speak as to its robustness, however.

@RCL_, Could you perhaps develop CMake in the open? Or better yet have one developer supervise the development with the community so we can have this done faster.
I can build idtech4.5 in a matter of minutes (utilizing all 8 virtual cores) with CMake, but single core building with UE4 is currently making UE impractical.

Could you then also write a explanation why you think UBT is necessary? I have a hard time believing that a monolithic UBT is actually necessary and cannot be split into simpler chunks. I guess its more a cultural thing (of Windows developers).
With regards to multi-core - if you do not utilize CMake fully you cannot generate Ninja targets and also probably not get the same multicore utilization.

We might. Note that even if you generate projects with CMake, you will still be building through UBT. Which, however, is not single-core (take a look into ExecuteActions() in LocalExecutor.cs) :wink:

Certainly everything that UBT does can be done with other build systems, however there seems to be no pressing need to spend time on this, at least for us. UBT is rather good at utilizing multiple cores and distributed builds (note that it supports Xoreax (Incredibuild) - take a look into XGE.cs) and can accomodate workflows not readily supported by CMake (e.g. building remotely on Mac with UnrealRemoteTool).

This is not to discourage you - feel free to replace UBT with some other build system if you like it more. However, in the short term we are not going to switch away from UBT, so this is unlikely to be upstreamed.

I’m also looking forward CMake support. This would be amazing.

PS: Btw, I’m also a QtCreator lover. Lightweight and still really practical IDE with custom CMake toolchain support. It is all I need and exactly no more, just like I think it should be.

We already generate CMakeLists.txt so you could try. However, CMake generated enormous (100+MB makefiles) and a large .cbp project which I was unable to open QtCreator last time I tried.

Could you please explain how to generate said CMakeLists.txt? Intellij recently release CLion as EAP and i would love to try it out with Unreal, because 2 hours with Visual Studio Express is all i needed for a table flip.

Just to keep this topic going, I would really love support to be able to use different IDEs and compilers.

I think it’s kind of frustrating as a single guy working on a video game that I really need to go through the hassle of having to use Visual Studio on Windows.

What I would love is support for at least the major compilers out there (clang, gcc, and msvc) as well as support for using your own IDE that you can setup up front that way I don’t have to pay thousands of dollars to get a decent IDE to work with. At least supporting ones like Eclipse and CodeLite would be nice,

Right now, I don’t know what I can do to get any further on a project I’m working on because of this.

Have you tried using CMakeLists.txt generated by UBT?

Yes, could you explain how to generate CMakeLists.txt?

Going to have it for gcc and netbeans but I’m not sure will it working?
Netbeans is popular because supports php, java and c++ all in one IDE having an extremely light weight