Please note that I am running this setup with the following app / os versions but with some minor tweaks this should be transferable to macOS and linux.
- Unreal Engine 4.20.3
- CLion 2018.2
- Windows 10
In order to get unreal going with CLion you need to do a few things
- Ensure that you either have Visual Studio Community 2017 installed or alternatively just the Visual Studio Build Tools as you need something to still compile the code.
- CLion should automagically recognize what you have installed and assign the correct compiler configurations
- Download the latest and greatest version of CLion
- Once installed / setup open it up and navigate to the plugins panel ( Settings -> Plugins )
- Install the Unreal Engine SDK Support Plugin
- This plugin includes auto completion features for property / reflection specifiers
- Open Unreal Editor ( source or binary doesn’t matter )
- Go to Edit -> Editor Preferences
- Then go to General -> Source Code -> Source Code Editor and select CLion
- Once this is done you should now be able to generate a new CLion project using File -> Generate CLion Project
- This generation step will take a few seconds to complete
- Once complete you should restart Unreal Editor before opening up CLion
- NOTE: not sure why this occurs but generating the project and launching it immediately does not correctly configure it. I found that making adjustments to the CMakeLists.txt file and setting the build process to Release prior to launching CLion seems to clear up a lot of things. See below for details.
- To open up CLion go to File -> Open CLion
At this point Unreal should be launching CLion and presenting you with your project structure that looks similar to this.
Almost there, we just have a few more things to complete before you are able to get back to building your game:
- Ensure that you are picking your Project + Editor as your Build Target. This is so you can compile in CLion and get hot swapping in Unreal Editor.
- Alternatively if you are building different targets make sure those are selected.
- Ensure that you mark your Source folder as part of CLion project definitions so intellisense / autocomplete works correctly
- This is not required but helps with navigating your project
That’s it !
And that is it as far as configuration goes. You should be able to build your project using CTRL + F9 and see your changes reflected in the Unreal Editor / your game.
The compile times are similar to Visual Studio but the richness of the CLion tool suite makes development a lot easier to traverse. Specifically have a look at the various shortcuts that come with CLion.
There are a handful of issues I ran into while compiling this article. If you come across anything similar here are a few instructions that should hopefully help.
Dealing with invalid CMakeLists.txt file
The CMakeLists.txt file when generated by Unreal sometimes will contain non escaped backslashes, \ vs \\ , which will have to be adjusted manually.
Command line error D8049
Deleting CLion references and changing back to a different editor
In case you are not happy with CLion and want to revert things back to use Visual Studio I recommend cleaning up the files the CLion integration generated.
Specifically the following folders / files inside of your root project:
Once this is complete you simply follow the initial set of instructions but instead of picking CLion just select Visual Studio. This should then give you the option to re-generate the Visual Studio project within Unreal Editor ( File -> Refresh / Generate Visual Studio Project )