LMMS / LMMS/lmms

Setting up QtCreator (Guide + Scripts)

Open
#4,934 12 comments 1 reaction 0 assignees View on GitHub
Dominant language
C++
Stars
10.4k
Forks
1.3k
Avg merge
2d 13h
Merged PRs (30d)
7

Description

# Motivation

It's important to have your IDE setup correctly before coding the first line. It will:

* Make reading/editing code waaayyyyy easier
* Reduce the code review editorial a lot (especially style issues)

Everyone can use their favourite IDE, but QtCreator is one of the most popular, and it's practical for dealing with Qt code. It's not worth for every programmer to

* Find out how to create a good project file (for each worktree/branch!)
* Read our coding conventions and try to reflect them in style files

No one wants to mess around with that for every branch. It's probably also annoying for LMMS beginners to say: "Welcome to LMMS, before you code, please spend 2 hours getting your IDE ready". They might prefer a "Hello, just run `generate-project.sh` and start coding immediatelly".

That is why we should make it as easy as possible to set this up.

# Proposals

1. How to load a project
a. One way is to use QtCreator's CMake importer. That usually works flawless, but the file tree can look a bit unordered. ![QtCreator with CMake](https://i.imgur.com/ApUsqFP.png)
b. We could also autogenerate project files using a script. Questions:
1. I wonder what language should be used - should it work on Windows (@justnope) ?
2. Compiling LMMS requires a few autogenerated headers in the build directory. Should the project file be bound to a configuration (like "build/")?
![QtCreator with project files](https://i.imgur.com/YL0fBKW.png)
2. How to keep coding conventions?
a. QtCreator allows importing XML code style files. We should deliver one.
b. You can use clang-format to re-format existing files ( #4690 ), but you'll rarely need this.

# Summary

Maybe something like this?

```
data/IDE/qt-creator/README.md
data/IDE/qt-creator/generate-project.sh
data/IDE/qt-creator/code-style.xml
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the proposed data/IDE/qt-creator/README.md, generate-project.sh, and code-style.xml paths, then compare the QtCreator CMake importer and autogenerated project-file approaches described in the issue. Resolve the Windows and build-directory questions, document project loading and coding conventions, and provide the setup files so a beginner can configure QtCreator without manual project work.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp, shell
Domain
build-system, developer-experience, tooling
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.