summaryrefslogtreecommitdiff
path: root/README.md
blob: 1c9df512a9c5900b52fa7ea38aa0c83dd4c8425c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# Assignment List

A QT application for managing grouped tasks (or "entries"). Originally written using [PyQt5](https://github.com/lshprung/assignment-list-pyqt) before being rewritten in C++.

### Build Prerequisites

On Debian/Debian-based (Qt5):

```
# apt install cmake git g++ libqt5core5a libqt5gui5 libqt5sql5 libqt5sql5-sqlite libqt5svg5 libqt5widgets5 qtbase5-dev qttools5-dev
```

On Debian/Debian-based (Qt6):

```
# apt install cmake git g++ libqt6core6 libqt6gui6 libqt6sql6 libqt6sql6-sqlite libqt6svg6 libqt6uitools6 libqt6widgets6 qt6-base-dev qt6-tools-dev
```

On Fedora (Qt5):

```
# dnf install cmake gcc-c++ qt5-qtbase-devel qt5-qttools-static qt5-qtsvg-devel
```

On Fedora (Qt6):

```
# dnf install cmake gcc-c++ qt6-qtbase-devel qt6-qttools-devel qt6-qtsvg-devel
```

On Arch Linux (Qt5):

```
# pacman -S cmake gcc make qt5-base qt5-svg qt5-tools
```

On Arch Linux (Qt6):

```
# pacman -S cmake gcc make qt6-base qt6-svg qt6-tools
```

### Build Instructions

```
$ mkdir build
$ cd build
$ cmake ../
$ make
```

The above commands run from the project root will build the application.

The cmake command can be substituted with `cmake -DUSE_QT5=yes ../` to explicitly use Qt5 over Qt6 or `cmake -DUSE_QT6=yes ../` to explicitly use Qt6 over Qt5.

If using ninja instead of Makefiles, run `ninja` instead of `make`

### Installation

```
# make install
```

The above command will install the application, as well as a desktop entry (if on Linux)

Building installer packages using CPack is also supported for the following package formats:

- DEB (`cpack -G DEB`)
- RPM (`cpack -G RPM`)
- Windows Installer (`cpack -G NSIS`)

### Caveats

- Compiling on Windows currently requires the use of [MSYS2 MinGW](https://www.msys2.org/) to build correctly