You are not logged in.

#1 2016-06-29 20:32:58

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 102

HowTo play Alien Isolation with a Radeon RX 480

HowTo play Alien Isolation with a Radeon RX 480 v20160710

AMD's open source drivers for the RX 480 haven't hit stable releases of the software packages in the Linux graphics stack, yet. We need to build some bleeding edge software right from git and svn. The good news is: Arch is great for this task because it has AUR and all bleeding edge software is already available there. However, it's still a lot to do. So here is a step-by-step guide...

0.) prepare build environment

mkdir ~/aur
cd ~/aur
sudo vim /etc/makepkg.conf

Now search for CFLAGS. You will find the following lines:

CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong"
CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong"

Replace these 2 lines with the following lines:

CFLAGS="-march=native -O2 -pipe -fstack-protector-strong"
CXXFLAGS="${CFLAGS}"

Save and quit vim.

1.) build & install llvm-svn & lib32-llvm-svn (you need the 32bit package for steam)

wget https://aur.archlinux.org/cgit/aur.git/snapshot/llvm-svn.tar.gz
tar zxvf llvm-svn.tar.gz
cd llvm-svn
makepkg -sri 
cd ..
rm llvm-svn.tar.gz
wget https://aur.archlinux.org/cgit/aur.git/snapshot/lib32-llvm-svn.tar.gz
tar zxvf lib32-llvm-svn.tar.gz
cd lib32-llvm-svn
makepkg -sri 
cd ..
rm lib32-llvm-svn.tar.gz

Pacman will probably install a lot of new packages (build environment & dependencies) if this is the first aur package you install. Answer all questions with 'y'.

2.) build & install mesa-git & lib32-mesa-git (you need the 32bit package for steam)

wget https://aur.archlinux.org/cgit/aur.git/snapshot/mesa-git.tar.gz
tar zxvf mesa-git.tar.gz
cd mesa-git
makepkg -sri 
cd ..
rm mesa-git.tar.gz
wget https://aur.archlinux.org/cgit/aur.git/snapshot/lib32-mesa-git.tar.gz
tar zxvf lib32-mesa-git.tar.gz
cd lib32-mesa-git
makepkg -sri 
cd ..
rm lib32-mesa-git.tar.gz

3.) build & install linux-git (4.7rc)

wget https://aur.archlinux.org/cgit/aur.git/snapshot/linux-git.tar.gz
tar zxvf linux-git.tar.gz
cd linux-git
makepkg -sri
cd ..
rm linux-git.tar.gz
vim /etc/default/grub

Now search for "GRUB_CMDLINE_LINUX_DEFAULT" and add 2 parameters for amdgpu like here:

GRUB_CMDLINE_LINUX_DEFAULT="amdgpu.powerplay=1 amdgpu.exp_hw_support=1"

Save & exit. Now run:

sudo grub-mkconfig -o /boot/grub/grub.cfg

4.) build & install cunit (dependency for libdrm-git) & lib32-cunit (dependency for lib32-libdrm-git)

wget https://aur.archlinux.org/cgit/aur.git/snapshot/cunit.tar.gz
tar zxvf cunit.tar.gz
cd cunit
makepkg -sri
cd ..
rm cunit.tar.gz
wget https://aur.archlinux.org/cgit/aur.git/snapshot/lib32-cunit.tar.gz
tar zxvf lib32-cunit.tar.gz
cd lib32-cunit
makepkg -sri
cd ..
rm lib32-cunit.tar.gz

5.) build & install libdrm-git & lib32-libdrm-git (you need the 32bit package for steam)

wget https://aur.archlinux.org/cgit/aur.git/snapshot/libdrm-git.tar.gz
tar zxvf libdrm-git
cd libdrm-git
makepkg -sri
cd ..
rm libdrm-git.tar.gz
wget https://aur.archlinux.org/cgit/aur.git/snapshot/lib32-libdrm-git.tar.gz
tar zxvf lib32-libdrm-git
cd lib32-libdrm-git
makepkg -sri
cd ..
rm lib32-libdrm-git.tar.gz

6.) install xf86-video-amdgpu
Just install a stable package:

sudo pacman -S xf86-video-amdgpu package

Make sure there's no /etc/X11/xorg.conf or other config file in /etc/X11/xorg.conf.d/ that prevents Xorg from loading the amdgpu driver. It's fine to have no config file at all, because Xorg will detect the best driver on start dynamically.

7.) install linux-firmware-git
Download all polaris10_* files from https://people.freedesktop.org/~agd5f/r … e/polaris/. Then copy them to the directory, where the driver loads them from:

sudo cp ~/Downloads/polaris10_* /lib/firmware/amdgpu

8.) delete steam's old libstdc++
Steam will use your system's libstd++ after deleting its own version (which is too old for the software we've just installed):

rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libstdc++*
rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++*

9.) clean up (optional)
You might want to keep all the directories we've created during build, so that you can easily update the packages later. Otherwise the following command removes all directories that have been created during build. It will not remove the packages you've installed with pacman!

cd ~; rm -rf ~/aur

10.) start steam and Alien Isolation
Reboot to the new kernel. Now you should be able to play the game. If it doesn't work please start steam in a terminal with the following command...

LIBGL_DEBUG=verbose steam

...and post the errors here.

Known Problems
No known problems anymore.

Result & Benchmarks
I can play the game with all settings "on" / "high" and anti-aliasing on "1x". I guess my fps are pretty low, but my system is 7 years old and doesn't meet the specs anyway.
New: Watch your fps by starting steam (or any game) with "GALLIUM_HUD=fps" on the command line, e.g. "GALLIUM_HUD=fps steam".

Please reply to this thread with your results, comments and improvements.


=== Here's my original question/posting ===

Hi.

I'm glad AMD has finally made an attempt to release good open source drivers. So here's my goal: playing Alien Isolation with a Radeon RX 480 on ArchLinux. What (beta) software do I need? What's already available in AUR? What do I need to build myself? Heise.de (german) writes that I need:

- Kernel 4.7 (linux-git)
- Mesa 12.0 (mesa-git)
- LLVM 3.8.1/3.9 (llvm-svn)

As you can see I already found AUR packages for all of them. Are these the best AUR packages or do you know of others that are better for gaming? I also found the AMDGPU Wiki page which suggests to install the following packages:

- xf86-video-amdgpu
- mesa
- mesa-libgl
- mesa-vdpau

There's an AUR for all 3 mesa packages (...-git), even lib32 version for each of them (in case Alien Isolation is a 32bit game). But what about xf86-video-amdgpu? I couldn't find a corresponding AUR for the latest git/svn version. I could only find xserver-xorg-video-amdgpu-pro, which is probably the wrong one since it's for the pro series of AMD's graphics cards (nope, it's the hybrid driver package, the closed-source add-on for the open source driver).

Feel free to add further suggestions whatsoever for an improved gaming experience! smile

===

edit: restructured posting, updated packages according to Lone_Wolf, several updates according to your comments

Last edited by thorstenhirsch (2016-07-10 21:45:17)

Offline

#2 2016-06-30 09:53:12

alex.theoto
Member
From: Athens Greece
Registered: 2014-11-30
Posts: 307

Re: HowTo play Alien Isolation with a Radeon RX 480

From here and there I read that it will run only on nvidia cards and drivers. [1], [2]
I don't know if it is playable only via steam but at steam store I don't see the Linux version.

Please search the web before asking... Sorry...

Last edited by alex.theoto (2016-09-02 06:34:14)

Offline

#3 2016-06-30 12:49:22

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 11,787
Website

Re: HowTo play Alien Isolation with a Radeon RX 480

Mod note : moving to Multimedia and Games.


Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

#4 2016-06-30 14:19:36

ChemBro
Member
Registered: 2008-10-22
Posts: 703

Re: HowTo play Alien Isolation with a Radeon RX 480

alex.theoto wrote:

From here and there I read that it will run only on nvidia cards and drivers...

They run on AMD cards, too. Just no official support.

Please search the web before asking...

And for what should he search? All I see are legitimate questions.

Offline

#5 2016-06-30 19:51:12

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 102

Re: HowTo play Alien Isolation with a Radeon RX 480

Thank you for your answers.

alex.theoto wrote:

From here and there I read that it will run only on nvidia cards and drivers. [1], [2]

Actually your links don't say so. They only state that official support is for nvidia only. Well, that's not what I'm here for. In the last 15 years I always bought nvidia cards, because their proprietary driver was better than amd's. But now nvidia is out, because amd released an open source driver. It's that simple. So I only want to know "HowTo play Alien Isolation with a Radeon RX 480".

P.S.: Yes, Alien Isolation is officially available in Steam for Linux.

Offline

#6 2016-06-30 22:48:10

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: HowTo play Alien Isolation with a Radeon RX 480

Heise's list of needed things is rather shallow, this is what phoronix used for their RX 480  OSS linux tests [1] :

kernel : 4.7 git , polaris-test branch

mesa-git master june 24 or later
(llvm-svn is a dependency for mesa-git, so doesn't need separate mention))

libdrm-git
xf86-video-amdgpu-git
linux-firmware-git from alex deucher' repo

I think that's 3 new packages and keep in mind there's no amd oss vulkan driver yet.

[1] http://www.phoronix.com/scan.php?page=n … -OSS-Steps

Last edited by Lone_Wolf (2016-06-30 22:48:25)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2016-07-03 13:07:55

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 102

Re: HowTo play Alien Isolation with a Radeon RX 480

Alright, it works! Well, my X.org/Gnome desktop is flickering a lot, but when starting Alien Isolation the flickering stops. Thank you for your reply, Lone_Wolf. I've seen you're the maintainer of the mesa-git package. Glad to have you here!

Offline

#8 2016-07-04 02:00:26

Dmoney
Member
Registered: 2016-06-21
Posts: 6

Re: HowTo play Alien Isolation with a Radeon RX 480

Thank you so much thorstenhirsch! You solved my dual monitor problem.

I'm a new Linux user and have been using arch as my main OS only for a couple weeks successfully with the GTX 560ti. I  bought the RX 480 the day it came out as my 560ti was dying and thought i would be prepared to switch but i was not looking at the right information beforehand. I installed the amdgpu-pro drivers after researching what i should do after i install the card but that completely messed up my whole Xorg/Gnome to the point where it would not boot. I had to delete all pacman packages except base with a command because i could not successfully uninstall the amdgpu-pro drivers without pacman telling me it will break something. Once i reinstalled Xorg/gnome and the xf86-video-amdgpu drivers again it would only recognize one monitor and the resolution of the second monitor would be put on the first one or i just couldn't boot into gnome at all and the screen would flicker. I got many errors that i googled and troubleshooted for three days but nothing worked at all to fix my problem. I saw this post when i first got the card and saw you updated it quite nicely so i decided to try something else. I followed your post (except for the 32-bit packages because i have windows 10 for gaming on a dual boot.) and i now have both monitors working in correct resolution on the Gnome desktop.

Thank you for putting up this detailed information as it helped me get back on arch and wasn't to hard to follow for novice users.

Last edited by Dmoney (2016-07-04 05:10:16)

Offline

#9 2016-07-09 05:57:31

talonzx
Member
Registered: 2010-02-16
Posts: 7

Re: HowTo play Alien Isolation with a Radeon RX 480

i'm currently having problems trying to install linux-git with polaris branch

fatal: No names found, cannot describe anything.
==> ERROR: pkgver is not allowed to be empty.
==> ERROR: pkgver() generated an invalid version:
==> ERROR: Makepkg was unable to build linux-git.

how do i find the right pkg version  to correct this error ?

Offline

#10 2016-07-09 12:12:05

WienerWuerstel
Member
Registered: 2016-07-09
Posts: 2

Re: HowTo play Alien Isolation with a Radeon RX 480

talonzx wrote:

i'm currently having problems trying to install linux-git with polaris branch

fatal: No names found, cannot describe anything.
==> ERROR: pkgver is not allowed to be empty.
==> ERROR: pkgver() generated an invalid version:
==> ERROR: Makepkg was unable to build linux-git.

how do i find the right pkg version  to correct this error ?

You don't need to build the Linux Kernel from the Polaris branch anymore. All the missing pieces for Polaris support were added to the 4.7-rc6 Kernel AFAIK.

Offline

#11 2016-07-10 21:46:23

thorstenhirsch
Member
Registered: 2005-08-03
Posts: 102

Re: HowTo play Alien Isolation with a Radeon RX 480

Affirmative. I updated the 1st post and removed the parts with the polaris-test branch.

Offline

#12 2016-07-11 05:55:21

WienerWuerstel
Member
Registered: 2016-07-09
Posts: 2

Re: HowTo play Alien Isolation with a Radeon RX 480

thorstenhirsch wrote:

Affirmative. I updated the 1st post and removed the parts with the polaris-test branch.

Is there any reason why you recommend the "linux-git" package over the more stable "linux-mainline" one?

Offline

#13 2016-09-21 19:56:39

Dokter Bibber
Member
Registered: 2016-09-19
Posts: 65

Re: HowTo play Alien Isolation with a Radeon RX 480

thorstenhirsch wrote:

HowTo play Alien Isolation with a Radeon RX 480 v20160710

AMD's open source drivers for the RX 480 haven't hit stable releases of the software packages in the Linux graphics stack, yet. We need to build some bleeding edge software right from git and svn.

..........

Is this still required for the open source drivers?
Or have the correct packages required for Polaris hit stable now ?
(I haven't got Arch installed yet.)

EDIT:
Forgot to add that I see these versions in Core and Extra :

thorstenhirsch wrote:

..........
- Kernel 4.7 (linux-git)
- Mesa 12.0 (mesa-git)
- LLVM 3.8.1/3.9 (llvm-svn)
..........

- Kernel 4.7.4 : https://www.archlinux.org/packages/?name=linux
- Mesa 12.0.3 + mesa-libgl 12.0.3 + mesa-vdpau 12.0.3 : https://www.archlinux.org/packages/?sor … =&flagged=
- LLVM 3.8.1 : https://www.archlinux.org/packages/?sor … =&flagged=

xf86-video-amdgpu 1.1.2 : https://www.archlinux.org/packages/?sor … =&flagged=

Last edited by Dokter Bibber (2016-09-21 20:27:44)

Offline

#14 2016-09-22 11:45:31

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: HowTo play Alien Isolation with a Radeon RX 480

The stock versions in [core] / [extra] repos for kernel, libdrm and xf86-video-amdgpu support the RX gpus .

Mesa + llvm is a bit more complex.

mesa 12.0.x with llvm 3.8.1 :
has support for RX gpus, but is limited to OpenGL 4.1 .
Whether that is enough depends largely on the application (no idea what Alien Isolation requires) .

Mesa 12.x does support OpenGL 4.1+ (upto OpenGL 4.5 !) but needs to be build against llvm 3.9 or later to do that.
Llvm 3.9 has been released, but hasn't entered [testing] yet.

If you need/want OpenGL above 4.1 , then mesa-git + llvm-svn is currently your only option .

for more info about building/using mesa-git/ llvm-svn see https://bbs.archlinux.org/viewtopic.php?id=212819

Last edited by Lone_Wolf (2016-09-22 11:47:13)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#15 2016-09-22 12:22:33

Dokter Bibber
Member
Registered: 2016-09-19
Posts: 65

Re: HowTo play Alien Isolation with a Radeon RX 480

Thanks for confirming and clearing up the OpenGL bit.
I'm fine with OpenGL 4.1. Blender's requirements list "Dual OpenGL 3.2 compatible graphics cards with 4 GB RAM" as an optimal requirement. (I'm not taking the dual option though.)

Offline

#16 2016-09-23 07:50:21

bokal
Member
Registered: 2010-12-15
Posts: 30

Re: HowTo play Alien Isolation with a Radeon RX 480

Lone_Wolf wrote:

Mesa 12.x does support OpenGL 4.1+ (upto OpenGL 4.5 !) but needs to be build against llvm 3.9 or later to do that.
Llvm 3.9 has been released, but hasn't entered [testing] yet.

I'm not very familiar with the way it works. Why hasn't llvm 3.9 entered [testing] yet? there is already a commit with changes that indicates that the package is updated to the last version (https://git.archlinux.org/svntogit/pack … b17fbde6ba)

What is holding it? Maintainer's lack ot time? Or a process I'm not aware of?

Thanks!

Offline

#17 2016-09-23 10:37:07

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: HowTo play Alien Isolation with a Radeon RX 480

There are many reasons why this could be delayed, llvm/clang is not a simple package.
Search our bugtracker for llvm and you'll find atleast one reason.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

Board footer

Powered by FluxBB