Nintendo Switch emulator (unofficial mirror fork)
Find a file
Kyle Kienapfel a75542ad2d CMake: rework for Qt6 support
This PR rearranges things in the CMake system to make compiling with Qt6 possible

1. Camera API has changed in Qt6, so the camera feature is disabled
2. A previous fix involving QLocale is now version gated.
3. QRegExp replaced with QRegularExpression, see #5343
4. Qt6_LOCATION option added to specify a location to search for Qt6
  (see examples below)
5. windeployqt is used to copy Qt6 files into the build directory on Windows

Notes for Arch Linux
Arch install happened to have qt6-base qt6-declarative qt6-translations installed

mkdir build && cd build
cmake .. -GNinja -DYUZU_USE_BUNDLED_VCPKG=ON -DYUZU_TESTS=OFF -DENABLE_QT6=YES -DYUZU_USE_BUNDLED_QT=NO

Windows (MSVC)
Qt wants users to download precompiled libraries via an online installer,
it is worth noting that the GPL/LGPL takes precendence over any ...

In the Qt Maintenance tool, under a version, such as 6.3.1
Select "MSVC 2019 64-bit"
Under Additional Libraries Qt Multimedia may be of use for Camera support

For the Web Applet I had to select the following:
PDF Positioning WebChannel WebEngine

mkdir build && cd build
cmake -G "Visual Studio 16 2019" -DQt6_LOCATION=C:/Qt/6.4.0/msvc2019_64/ \
-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=YES -DYUZU_USE_BUNDLED_QT=NO \
-DENABLE_QT_TRANSLATION=YES -DENABLE_QT6=YES ..

Some numbers for reference (msvc2019_64)
Qt5 (slimmed down) 508 MB
Qt5.15.2 all in    929 MB
Qt6.3.1           1.71 GB
Qt6.3.2           1.73 GB
Qt6.4.0-beta3     1.83 GB
Qt6.4.0           1.67 GB
2022-11-24 06:28:42 -08:00
.ci Set TX_TOKEN for transifex client 2022-10-16 23:37:25 -07:00
.github Set TX_TOKEN for transifex client 2022-10-16 23:37:25 -07:00
.reuse UI: move icons from default into colorful theme. 2022-09-15 23:00:49 -07:00
CMakeModules CMake: rework for Qt6 support 2022-11-24 06:28:42 -08:00
dist Manually import Ukrainian language files 2022-11-02 02:22:18 -07:00
externals externals: microprofileui: Remove unused variables 2022-11-16 20:36:43 +03:00
hooks chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
LICENSES Moving Icons away from CC BY-ND 3.0 for FOSS packaging purposes 2022-08-14 06:45:40 -07:00
src CMake: rework for Qt6 support 2022-11-24 06:28:42 -08:00
.gitattributes chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
.gitignore GIT: Modify .gitignore to ignore wildcard for build directories 2022-09-16 10:58:29 -07:00
.gitmodules externals: Use yuzu-emu/discord-rpc to provide Discord integration 2022-07-28 12:57:05 -04:00
.lgtm.yml chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
CMakeLists.txt CMake: rework for Qt6 support 2022-11-24 06:28:42 -08:00
CONTRIBUTING.md chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
Doxyfile chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
LICENSE.txt chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
README.md chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
vcpkg.json vcpkg,cmake: Use vcpkg for dbghelp 2022-09-04 21:36:05 -04:00


yuzu
yuzu

yuzu is the world's most popular, open-source, Nintendo Switch emulator — started by the creators of Citra.
It is written in C++ with portability in mind, and we actively maintain builds for Windows and Linux.

Azure Mainline CI Build Status Discord

Compatibility | Development | Building | Download | Support | License

Compatibility

The emulator is capable of running most commercial games at full speed, provided you meet the necessary hardware requirements.

For a full list of games yuzu support, please visit our Compatibility page

Check out our website for the latest news on exciting features, monthly progress reports, and more!

Development

Most of the development happens on GitHub. It's also where our central repository is hosted. For development discussion, please join us on Discord.

If you want to contribute, please take a look at the Contributor's Guide and Developer Information. You can also contact any of the developers on Discord in order to know about the current state of the emulator.

If you want to contribute to the user interface translation project, please check out the yuzu project on transifex. We centralize translation work there, and periodically upstream translations.

Building

Download

You can download the latest releases automatically via the installer on our downloads page.

Support

If you enjoy the project and want to support us financially, check out our Patreon!

Any donations received will go towards things like:

  • Switch consoles to explore and reverse-engineer the hardware
  • Switch games for testing, reverse-engineering, and implementing new features
  • Web hosting and infrastructure setup
  • Software licenses (e.g. Visual Studio, IDA Pro, etc.)
  • Additional hardware (e.g. GPUs as-needed to improve rendering support, other peripherals to add support for, etc.)

If you wish to support us a different way, please join our Discord and talk to bunnei. You may also contact: donations@yuzu-emu.org.

License

yuzu is licensed under the GPLv3 (or any later version). Refer to the LICENSE.txt file.

The Skyline-Emulator Team may choose to use the code from these contributors under the GPL-3.0-or-later OR MPL-2.0: FernandoS27, lioncash, bunnei, ReinUsesLisp, Morph1984, ogniK5377, german77, ameerj, Kelebek1 and lat9nq