Qt 6 updates
| @@ -14,36 +14,32 @@ You'll need to download and install the following to build Citra: | |||||||
|   - Arch: `pacman -S openssl-1.0` |   - Arch: `pacman -S openssl-1.0` | ||||||
|   - Fedora: `dnf install openssl-devel` |   - Fedora: `dnf install openssl-devel` | ||||||
|   - OpenSUSE: `zypper in openssl-devel` |   - OpenSUSE: `zypper in openssl-devel` | ||||||
| * [Qt](http://qt-project.org/downloads) 5.9+ | * [Qt](http://qt-project.org/downloads) 6.2+ | ||||||
|   - Only 5.9+ versions are tested. Lower version might or might not work. See the section **Install new Qt version** below if your distro does not provide a sufficient version of Qt |   - Only 6.2+ versions are tested. Lower version might or might not work. See the section **Install new Qt version** below if your distro does not provide a sufficient version of Qt | ||||||
|   - Deb: `apt install qtbase5-dev libqt5opengl5-dev qtmultimedia5-dev qtbase5-private-dev` |   - Deb: `apt install qt6-base-dev qt6-base-private-dev qt6-multimedia-dev` | ||||||
|     - You may also need `apt install libqt5multimedia5-plugins` to get the camera working |     - You may also need `apt install qt6-l10n-tools qt6-tools-dev qt6-tools-dev-tools` to build with translation support | ||||||
|   - Arch: `pacman -S qt5` |   - Arch: `pacman -S qt6-base qt6-multimedia qt6-multimedia-ffmpeg` | ||||||
|   - Fedora: `dnf install qt5-qtmultimedia-devel` |     - You will also need to install a multimedia backend, either `qt6-multimedia-ffmpeg` or `qt6-multimedia-gstreamer`.  | ||||||
|   - OpenSUSE: `zypper in libQt5Multimedia5 libqt5-qtmultimedia-devel libQt5Concurrent-devel` |   - Fedora: `dnf install qt6-devel` | ||||||
|  |   - OpenSUSE: `zypper in qt6-base qt6-multimedia` | ||||||
| * **Optional dependencies needed for HLE AAC Decoding on Linux** | * **Optional dependencies needed for HLE AAC Decoding on Linux** | ||||||
|   - FDK-AAC |  | ||||||
|     * Deb: `apt install libfdk-aac-dev` |  | ||||||
|     * Arch: `pacman -S libfdk-aac` |  | ||||||
|     * Fedora: `dnf install fdk-aac-devel` |  | ||||||
|     * OpenSUSE: `zypper in fdk-aac-devel` |  | ||||||
|   - [FFMPEG](https://ffmpeg.org/download.html#build-linux) 4.0+ |   - [FFMPEG](https://ffmpeg.org/download.html#build-linux) 4.0+ | ||||||
|     * Deb: `sudo apt install ffmpeg libswscale-dev libavformat-dev libavcodec-dev libavdevice-dev` |     * Deb: `sudo apt install ffmpeg libswscale-dev libavformat-dev libavcodec-dev libavdevice-dev` | ||||||
|     * Fedora: `dnf install ffmpeg-devel compat-ffmpeg4` |     * Fedora: `dnf install ffmpeg-devel compat-ffmpeg4` | ||||||
|     * OpenSUSE Leap 15: `zypper in ffmpeg-3 ffmpeg-3-libavcodec-devel` |     * OpenSUSE Leap 15: `zypper in ffmpeg-3 ffmpeg-3-libavcodec-devel` | ||||||
|     * OpenSUSE Tumbleweed: `zypper in ffmpeg-4 ffmpeg-4-libavcodec-devel` |     * OpenSUSE Tumbleweed: `zypper in ffmpeg-4 ffmpeg-4-libavcodec-devel` | ||||||
| * Compiler: GCC or Clang. You only need one of these two: | * Compiler: GCC or Clang. You only need one of these two: | ||||||
|   * GCC 7.0+.  |   * GCC 10.0+.  | ||||||
|     - Deb: `apt install build-essential` |     - Deb: `apt install build-essential` | ||||||
|     - Arch: `pacman -S base-devel` |     - Arch: `pacman -S base-devel` | ||||||
|     - Fedora: `dnf install gcc-c++` |     - Fedora: `dnf install gcc-c++` | ||||||
|     - OpenSUSE: `zypper in gcc-c++` |     - OpenSUSE: `zypper in gcc-c++` | ||||||
|   * [Clang](https://github.com/llvm-mirror/clang) 5.0+  |   * [Clang](https://github.com/llvm-mirror/clang) 9.0+  | ||||||
|     - Deb: `apt install clang clang-format libc++-dev` (in some distros, clang-5.0). |     - Deb: `apt install clang clang-format libc++-dev` (in some distros, clang-9.0). | ||||||
|     - Arch: `pacman -S clang`, `libc++` is in the AUR. Use pacaur or yaourt to install it. |     - Arch: `pacman -S clang`, `libc++` is in the AUR. Use pacaur or yaourt to install it. | ||||||
|     - Fedora: `dnf install clang libcxx-devel` |     - Fedora: `dnf install clang libcxx-devel` | ||||||
|     - OpenSUSE: `zypper in clang` |     - OpenSUSE: `zypper in clang` | ||||||
| * [CMake](http://www.cmake.org/) 3.15+ | * [CMake](http://www.cmake.org/) 3.20+ | ||||||
|   - Deb: `apt install cmake` |   - Deb: `apt install cmake` | ||||||
|   - Arch: `pacman -S cmake` |   - Arch: `pacman -S cmake` | ||||||
|   - Fedora: `dnf install cmake` |   - Fedora: `dnf install cmake` | ||||||
| @@ -139,19 +135,8 @@ gdb ../build/bin/citra-qt | |||||||
|  |  | ||||||
| ### Install new Qt version | ### Install new Qt version | ||||||
|  |  | ||||||
| If you had an error while building citra-qt part (this part was added from an `AutoMoc subprocess error` when running a qt5/bin/moc command, but this may fix some other errors) | If your distribution's version of Qt is too old, there are a few places you may be able to find newer versions. | ||||||
|  |  | ||||||
| - Go to http://download.qt.io/official_releases/qt/ and get the latest linux version link (this guide used 5.11.1 at the time) and run the following commands: | * This Ubuntu PPA contains backports of Qt 6 to various older versions: https://launchpad.net/~savoury1/+archive/ubuntu/qt-6-2 | ||||||
|  |  | ||||||
|       wget link_to_latest_linux_official_release | * This unofficial CLI installer allows downloading and installing the latest first-party builds of Qt to your system (whether it works against your distribution may vary): https://github.com/miurahr/aqtinstall | ||||||
|       chmod +x qt-opensource-linux-x64-x.x.x.run |  | ||||||
|       ./qt-opensource-linux-x64-x.x.x.run |  | ||||||
|  |  | ||||||
| - Install selecting only `Desktop gcc` option besides the `Tools` one that you can't remove |  | ||||||
| - Add those exports to your .bashrc file (change QTDIR variable if installing another version) |  | ||||||
|  |  | ||||||
|       export QTDIR="$HOME/Qt5.11.1/5.11.1/gcc_64" |  | ||||||
|       export PATH="$QTDIR/bin:$PATH" |  | ||||||
|       export LD_LIBRARY_PATH="$QTDIR/lib:$LD_LIBRARY_PATH" |  | ||||||
|  |  | ||||||
| - Reload your .bashrc file and try building again from the start. |  | ||||||
		Reference in New Issue
	
	Block a user
	 Steveice10
					Steveice10