mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-25 04:02:42 +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:
parent
ecd68dfc70
commit
00b74fb951
53
BUILDING.md
53
BUILDING.md
@ -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`).
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
cmake_minimum_required(VERSION 3.12.4)
|
cmake_minimum_required(VERSION 3.14.1)
|
||||||
|
|
||||||
project(rpcs3)
|
project(rpcs3)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user