2018-05-25 17:08:09 +02:00
# Linux
2024-06-23 14:26:59 +02:00
For all dependencies below we use Qt 6. Our minimum supported version is Qt 5.15.2, but you are on your own.
2018-10-19 21:39:09 +02:00
2022-07-23 14:04:29 +02:00
## Install dependencies
2021-02-21 14:45:42 +01:00
2024-03-24 12:48:00 +01:00
### Ubuntu
2018-05-25 17:08:09 +02:00
2024-03-24 12:48:00 +01:00
Building on Ubuntu requires Docker.
2021-03-28 16:58:51 +02:00
2024-06-23 14:26:59 +02:00
Use < https: / / github . com / Chatterino / docker / pkgs / container / chatterino2-build-ubuntu-20 . 04 > as your base if you're on Ubuntu 20.04.
2024-03-24 12:48:00 +01:00
2024-06-23 14:26:59 +02:00
Use < https: / / github . com / Chatterino / docker / pkgs / container / chatterino2-build-ubuntu-22 . 04 > if you're on Ubuntu 22.04.
2024-03-24 12:48:00 +01:00
2024-06-23 14:26:59 +02:00
The built binary should be exportable from the final image & able to run on your system assuming you perform a static build. See our [build.yml GitHub workflow file ](.github/workflows/build.yml ) for the CMake line used for Ubuntu builds.
2024-03-24 12:48:00 +01:00
### Debian 12 (bookworm) or later
```sh
sudo apt install qt6-base-dev qt6-5compat-dev qt6-svg-dev qt6-image-formats-plugins libboost1.81-dev libssl-dev cmake g++ git
```
2021-03-28 16:58:51 +02:00
2022-07-23 14:04:29 +02:00
### Arch Linux
2018-06-08 20:50:59 +02:00
2024-03-24 12:48:00 +01:00
```sh
sudo pacman -S --needed qt6-base qt6-tools boost-libs openssl qt6-imageformats qt6-5compat qt6-svg boost rapidjson pkgconf openssl cmake
```
2021-03-28 16:58:51 +02:00
2022-07-23 14:04:29 +02:00
Alternatively you can use the [chatterino2-git ](https://aur.archlinux.org/packages/chatterino2-git/ ) package to build and install Chatterino for you.
2021-03-28 16:58:51 +02:00
2024-03-24 12:48:00 +01:00
### Fedora 39 and above
2021-02-21 14:45:42 +01:00
2021-07-31 13:03:07 +02:00
_Most likely works the same for other Red Hat-like distros. Substitute `dnf` with `yum` ._
2021-03-28 16:58:51 +02:00
2024-03-24 12:48:00 +01:00
```sh
sudo dnf install qt6-qtbase-devel qt6-qtimageformats qt6-qtsvg-devel qt6-qt5compat-devel g++ git openssl-devel boost-devel cmake
```
2021-03-28 16:58:51 +02:00
2022-07-23 14:04:29 +02:00
### NixOS 18.09+
2021-03-28 16:58:51 +02:00
2024-03-24 12:48:00 +01:00
```sh
nix-shell -p openssl boost qt6.full pkg-config cmake
```
2021-02-21 14:45:42 +01:00
2022-07-23 14:04:29 +02:00
## Compile
2019-05-01 15:18:29 +02:00
2022-07-23 14:04:29 +02:00
## Manually
1. In the project directory, create a build directory and enter it
```sh
mkdir build
cd build
```
2024-05-06 17:03:17 +02:00
1. Generate build files. To enable Lua plugins in your build add `-DCHATTERINO_PLUGINS=ON` to this command.
2022-07-23 14:04:29 +02:00
```sh
2024-11-17 12:39:22 +01:00
cmake -DBUILD_WITH_QTKEYCHAIN=OFF ..
2022-07-23 14:04:29 +02:00
```
1. Build the project
```sh
2024-03-24 12:48:00 +01:00
cmake --build .
2022-07-23 14:04:29 +02:00
```
2024-03-24 12:48:00 +01:00
### Through Qt Creator
1. Install C++ IDE Qt Creator by using `sudo apt install qtcreator` (Or whatever equivalent for your distro)
1. Open `CMakeLists.txt` with Qt Creator and select build