1
0
mirror of https://github.com/RPCS3/rpcs3.git synced 2024-11-22 02:32:36 +01:00

Update BUILDING.md and CMakeLists.txt

Several parts of the guide had fallen out of sync, notably the Ubuntu section. I've tried to clean it up a bit.
In addition, I matched some of the version numbers to what is found in the CI system here: https://github.com/hcorion/rpcs3-docker/blob/master/xenial/Dockerfile
This commit is contained in:
JohnHolmesII 2020-02-26 21:31:46 +00:00 committed by Ivan
parent ecd68dfc70
commit 00b74fb951
2 changed files with 33 additions and 22 deletions

View File

@ -11,7 +11,7 @@ Other instructions may be found [here](https://wiki.rpcs3.net/index.php?title=Bu
* [Python 3.3+](https://www.python.org/downloads/) (add to PATH) * [Python 3.3+](https://www.python.org/downloads/) (add to PATH)
* [Qt 5.14+](https://www.qt.io/download-qt-installer) * [Qt 5.14+](https://www.qt.io/download-qt-installer)
* [Visual Studio 2019](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community) * [Visual Studio 2019](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community)
* [Vulkan SDK 1.1.97.0+](https://vulkan.lunarg.com/sdk/home) (See "Install the SDK" [here](https://vulkan.lunarg.com/doc/sdk/latest/windows/getting_started.html)) * [Vulkan SDK 1.1.126+](https://vulkan.lunarg.com/sdk/home) (See "Install the SDK" [here](https://vulkan.lunarg.com/doc/sdk/latest/windows/getting_started.html))
**Either add the** `QTDIR` **environment variable, e.g.** `<QtInstallFolder>\5.14.1\msvc2017_64\` **, or use the [Visual Studio Qt Plugin](https://marketplace.visualstudio.com/items?itemName=TheQtCompany.QtVisualStudioTools-19123)** **Either add the** `QTDIR` **environment variable, e.g.** `<QtInstallFolder>\5.14.1\msvc2017_64\` **, or use the [Visual Studio Qt Plugin](https://marketplace.visualstudio.com/items?itemName=TheQtCompany.QtVisualStudioTools-19123)**
@ -19,10 +19,10 @@ Other instructions may be found [here](https://wiki.rpcs3.net/index.php?title=Bu
These are the essentials tools to build RPCS3 on Linux. Some of them can be installed through your favorite package manager. These are the essentials tools to build RPCS3 on Linux. Some of them can be installed through your favorite package manager.
* Clang 5.0+ or GCC 8.1+ * Clang 9+ or GCC 9+
* [CMake 3.8.2+](https://www.cmake.org/download/) * [CMake 3.14.1+](https://www.cmake.org/download/)
* [Qt 5.14+](https://www.qt.io/download-qt-installer) * [Qt 5.14+](https://www.qt.io/download-qt-installer)
* [Vulkan SDK 1.1.97.0+](https://vulkan.lunarg.com/sdk/home) (See "Install the SDK" [here](https://vulkan.lunarg.com/doc/sdk/latest/linux/getting_started.html)) * [Vulkan SDK 1.1.126+](https://vulkan.lunarg.com/sdk/home) (See "Install the SDK" [here](https://vulkan.lunarg.com/doc/sdk/latest/linux/getting_started.html))
* [SDL2](https://www.libsdl.org/download-2.0.php) (for the FAudio backend) * [SDL2](https://www.libsdl.org/download-2.0.php) (for the FAudio backend)
**If you have an NVIDIA GPU, you may need to install the libglvnd package.** **If you have an NVIDIA GPU, you may need to install the libglvnd package.**
@ -33,40 +33,51 @@ These are the essentials tools to build RPCS3 on Linux. Some of them can be inst
#### Debian & Ubuntu #### Debian & Ubuntu
sudo apt-get install cmake build-essential libasound2-dev libpulse-dev libopenal-dev libglew-dev zlib1g-dev libedit-dev libvulkan-dev libudev-dev git qt5-default libevdev-dev qtdeclarative5-dev qtbase5-private-dev libsdl2-2.0 libsdl2-dev sudo apt-get install build-essential libasound2-dev libpulse-dev libopenal-dev libglew-dev zlib1g-dev libedit-dev libvulkan-dev libudev-dev git libevdev-dev libsdl2-2.0 libsdl2-dev
##### GCC 8.x installation Ubuntu is usually horrendously out of date, and some packages need to be downloaded by hand. This part is for Qt, GCC, Vulkan, and CMake
##### Qt PPA
If the `gcc-8` package is not available on your system, use the following command Ubuntu usually does not have a new enough Qt package to suit rpcs3's needs. There is a PPA available to work around this. Run the following:
```
ucodename=$(lsb_release -sc)
sudo add-apt-repository ppa:beineri/opt-qt-5.14.1-$ucodename
sudo apt-get update
. /opt/qt514/bin/qt514-env.sh >/dev/null 2>&1
sudo apt-get install qt514-meta-minimal qt514svg
```
##### GCC 9.x installation
If the `gcc-9` package is not available on your system, use the following commands
``` ```
sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo add-apt-repository ppa:ubuntu-toolchain-r/test
```
Then
```
sudo apt-get update sudo apt-get update
sudo apt-get install gcc-8 g++-8 sudo apt-get install gcc-9 g++-9
``` ```
You can either use `update-alternatives` to setup `gcc-8`/`g++-8` as your default compilers or prefix any `cmake` command by `CXX=g++-8 CC=gcc-8 ` to use it. You can either use `update-alternatives` to setup `gcc-9`/`g++-9` as your default compilers or prefix any `cmake` command by `CXX=g++-9 CC=gcc-9 ` to use it.
##### Vulkan SDK ##### Vulkan SDK
For Ubuntu systems, it is strongly recommended to use the PPA from [LunarG](https://packages.lunarg.com/) which will provide a compatible Vulkan SDK to compile RPCS3. If your Vulkan SDK is older, it can lead to compilation errors. For Ubuntu systems, it is strongly recommended to use the PPA from [LunarG](https://packages.lunarg.com/) which will provide a compatible Vulkan SDK to compile RPCS3. If your Vulkan SDK is older, it can lead to compilation errors.
Ubuntu 18.04 (Bionic Beaver)
``` ```
ucodename=$(lsb_release -sc)
wget -qO - http://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add - wget -qO - http://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.1.106-bionic.list http://packages.lunarg.com/vulkan/1.1.106/lunarg-vulkan-1.1.106-bionic.list sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.1.126-$ucodename.list http://packages.lunarg.com/vulkan/1.1.126/lunarg-vulkan-1.1.126-$ucodename.list
sudo apt update sudo apt update
sudo apt install vulkan-sdk sudo apt install vulkan-sdk
``` ```
Ubuntu 16.04 (Xenial Xerus) ##### CMake
``` ```
wget -qO - http://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add - wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo apt-key add -
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.1.106-xenial.list http://packages.lunarg.com/vulkan/1.1.106/lunarg-vulkan-1.1.106-xenial.list sudo apt-add-repository "deb https://apt.kitware.com/ubuntu/ $(lsb_release -sc) main"
sudo apt update sudo apt-get update
sudo apt install vulkan-sdk sudo apt-get install kitware-archive-keyring
sudo apt-key --keyring /etc/apt/trusted.gpg del C1F34CDD40CD72DA
sudo apt-get install cmake
``` ```
#### Fedora #### Fedora
@ -110,7 +121,7 @@ If you're not using precompiled libs, build the projects in *__BUILD_BEFORE* fol
While still in the project root: While still in the project root:
1) `cd .. && mkdir rpcs3_build && cd rpcs3_build` 1) `cd .. && mkdir rpcs3_build && cd rpcs3_build`
2) `cmake ../rpcs3/ && make` or `CXX=g++-8 CC=gcc-8 cmake ../rpcs3/ && make` to force these compilers 2) `cmake ../rpcs3/ && make` or `CXX=g++-9 CC=gcc-9 cmake ../rpcs3/ && make` to force these compilers
3) Run RPCS3 with `./bin/rpcs3` 3) Run RPCS3 with `./bin/rpcs3`
When using GDB, configure it to ignore SIGSEGV signal (`handle SIGSEGV nostop noprint`). When using GDB, configure it to ignore SIGSEGV signal (`handle SIGSEGV nostop noprint`).

View File

@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.12.4) cmake_minimum_required(VERSION 3.14.1)
project(rpcs3) project(rpcs3)