Hi San, I don't know whether it is easier to integrate UE4 into Qt Creator by QBS. Perhaps it is worth to investitage.
Cheers, Vincent On 5 March 2018 at 17:20, Tobias Hunger <[email protected]> wrote: > Hi San, > > Before we continue: Creator supports more than just qmake as a build > system. Is there any that works better? > > On Sat, Mar 3, 2018 at 9:57 AM, Sander Smid <[email protected]> wrote: > > Thanks Tobias for your reply. > > > > So I've been looking into what QtCreator already provides, what steps are > > already done on the UE4 side of things and what is missing to get proper > > integration. What UE4 currently provides is a qmake project file (.pro) > and > > a few project include files (.pri) which mainly list all the project > source > > and header files. The UE4.pro file does contain some description of > targets > > but not all of them are picked up when the user configures the project > file. > > All of the settings that actually deal with defines (UE4Defines.pri) seem > > stubbed and don't contain actual build defines. Probably because it is > > required by qmake but simply doesn't have a purpose as UE4 uses its own > > build system. > > > > The current UE4 documentation recommends each user needs to create a > > UE4.pro.user file in which the qmake build and clean steps are removed > and > > (manually) replaced with a make command. This is all described in an > array > > of "ProjectExplorer.Project.Target" structures in the UE4.pro.user that > > define the build and run settings. As a quick test I moved that part > over to > > a UE4.pro.shared file as that file is intended to be shared. > Unfortunately > > QtCreator prompts me to configure the project so I assume this isn't > > supported. > > Moving that to a .shared file will not work: The kit ids will not > match and then get ignored. Kit-specific stuff like build steps > currently can not effectively get shared in creator. > > > The alternative would be to generate the UE4.pro.user file in a similar > way > > the .pro file is generated (I should have all the information at that the > > moment the .pro and .pri files are being generated) however I got the > > impression that is not the recommended way to go about this. > > I doubt that would work for the same reason as the .shared files fail: > You do not know the right kit Ids to put into the .user file. > > > This bring me to the following set of questions: > > > > Fixing the qmake build steps: > > > > Each user currently needs to define their kits (which makes sense as it > > includes build target locations) but after generating them not all the > > targets as described in UE4.pro are not all available. Can you what steps > > are missing here? > > No idea. Everything in a .pro file should get picked up. > > > Can you see any reason why the qmake project files are not working? > > Bugs? :-) > > I am actually not sure whether creator is supposed to show aux targets or > not. > > > I know > > this is a broad question so feel free to skip this. > > Is there any other place than the .pro.user files where QtCreator stored > > information about project configurations that might be relevant (e.g > > ~/.config)? > > No. All the project-specific data is stored in the .user-file. > > > Use qmake project as a shell for code navigation and focus on getting > build > > and run configurations working with make: > > Why qmake? > > > I'm thinking to generate a set of "ProjectExplorer.Project.Target" > > structures that call 'make' to build the projects. I think I can generate > > the structure for a UE4.pro.user but that conflicts with the kit > > generation/configure step. Is there any other place where I can store > this > > structure so it is available to all users? > > No. > > > And is this a sane approach? > > No, it is user specific:-/ > > > I'm > > a bit worried about some of the Ids in there (e.g. > > ProjectExplorer.ProjectConfiguration.Id and EnvironmentId) will bite me > once > > I got the UE4.pro.user file generated. Any ideas on that? > > It will not work. That is a known problem for a while now. > > My plan is to eventually have project-specific wizards that can do the > necessary magic. But those are not there yet (and I am currently > poking into other corners, so do not hold your breath). > > > For reference I attached the generated .pro and .pri files which might > help > > filling in the blanks where my explanation (with very limited experience > > with qmake) might fall short. > > So basically you are defining custom targets for the things you > actually want to build? I am not sure that this is supported in > creator, it will definitely not be supported well. > > Best Regards, > Tobias > _______________________________________________ > Qt-creator mailing list > [email protected] > http://lists.qt-project.org/mailman/listinfo/qt-creator >
_______________________________________________ Qt-creator mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/qt-creator
