LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 01-07-2016, 10:22 AM   #1
ahc_fan
Member
 
Registered: Jan 2009
Location: Seattle, WA
Distribution: Slackware64 14.2
Posts: 259

Rep: Reputation: 11
I have a game that requires libwayland-egl


How do I get this library? I'm on Slackware64 14.1. I installed wayland and got the following libs but not libwayland-egl:

Quote:
/usr/lib/libwayland-client.so.0.3.0
/usr/lib/libwayland-client.la
/usr/lib/libwayland-cursor.so.0.0.0
/usr/lib/libwayland-client.so
/usr/lib/libwayland-server.so.0
/usr/lib/libwayland-cursor.la
/usr/lib/libwayland-server.la
/usr/lib/libwayland-server.so
/usr/lib/libwayland-client.so.0
/usr/lib/libwayland-cursor.so
/usr/lib/libwayland-cursor.so.0
/usr/lib/libwayland-server.so.0.1.0
Thanks
 
Old 01-07-2016, 10:44 AM   #2
fskmh
Member
 
Registered: Jun 2002
Location: South Africa
Distribution: Custom slackware64-current
Posts: 307

Rep: Reputation: 92
You need to recompile mesa after installing wayland. The following is from my laptop running Slack64-14.1 with many additional packages:
Code:
fskmh@fskmh1:~> grep libwayland-egl.so /var/log/packages/*
/var/log/packages/mesa-11.1.0-x86_64-1:usr/lib64/libwayland-egl.so.1.0.0
/var/log/packages/mesa-compat32-11.1.0-x86_64-1:usr/lib/libwayland-egl.so.1.0.0
 
1 members found this post helpful.
Old 01-07-2016, 12:07 PM   #3
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
The easiest way to do what fskmh recommends is to download Slackware's mesa source tree, including the SlackBuild and additional files, then just rerun the SlackBuild and upgradepkg the resulting package. See below for instructions.

Code:
wget -r -nH --no-parent --reject="index.html*" --cut-dirs=5 http://slackbuilds.org/mirror/slackware/slackware64-14.1/source/x/mesa/
cd mesa
su -
sh mesa.SlackBuild
upgradepkg /tmp/mesa-9.1.7-x86_64-1.txz

Last edited by bassmadrigal; 01-07-2016 at 12:11 PM. Reason: Switched links to 14.1 instead of -current
 
1 members found this post helpful.
Old 01-07-2016, 12:37 PM   #4
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559

Rep: Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106
Now I wonder if I should perhaps add a recompiled mesa to the "deps" section of my Plasma 5 repository (which contains a wayland package).
I noticed that some of the KWin stuff would not compile due to absense of wayland-egl which makes running a Plasma 5 Wayland session an impossible task at the moment.
 
1 members found this post helpful.
Old 01-07-2016, 12:53 PM   #5
ahc_fan
Member
 
Registered: Jan 2009
Location: Seattle, WA
Distribution: Slackware64 14.2
Posts: 259

Original Poster
Rep: Reputation: 11
Quote:
Originally Posted by bassmadrigal View Post
The easiest way to do what fskmh recommends is to download Slackware's mesa source tree, including the SlackBuild and additional files, then just rerun the SlackBuild and upgradepkg the resulting package. See below for instructions.

Code:
wget -r -nH --no-parent --reject="index.html*" --cut-dirs=5 http://slackbuilds.org/mirror/slackware/slackware64-14.1/source/x/mesa/
cd mesa
su -
sh mesa.SlackBuild
upgradepkg /tmp/mesa-9.1.7-x86_64-1.txz
I did this but it did not install libwayland-egl.
 
Old 01-07-2016, 01:08 PM   #6
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
Mesa requires a buildflag change:

Code:
--with-egl-platforms="drm,x11,wayland"
to work. You might also, but not required, want to rebuild xorg-server to get full Wayland support for X just in case.

Also, if you use it, the wayland-1.6.0 package on SBo is probably outdated, but the scripts can be edited to support the latest release.
 
1 members found this post helpful.
Old 01-08-2016, 05:02 AM   #7
fskmh
Member
 
Registered: Jun 2002
Location: South Africa
Distribution: Custom slackware64-current
Posts: 307

Rep: Reputation: 92
ReaperX7 is correct, I forgot to mention that bit.

I have this at the top of my SlackBuild (before arch detection):

Code:
DRI_DRIVERS="i915,i965,nouveau,r200,radeon,swrast"
GALLIUM_DRIVERS="nouveau,r300,r600,svga,radeonsi,swrast"
EGL_PLATFORMS="drm,wayland,x11"
Here's my config section, some additional comments are needed for background info.
Note that I've also installed libomxil-bellagio (hence the --enable-omx) and libtxc_dxtn (hence the --enable-texture-float). Installing libomxil-bellagio is optional but installing libtxc_dxtn is recommended. You can also remove "--enable-gallium-llvm" if you don't have llvm compiled with "--enable-targets". I use this to enable the llvm back-end for my r600 graphics. I see -current has switched to using cmake and my SlackBuild still uses autoconf. I don't know what the equivalent cmake invocation is, perhaps it's a default now. It might be best to use the SlackBuilds from -current if you want to update your graphics stack (libdrm, llvm, mesa) on 14.1, just know that it involves recompiling a fair number of packages, as well as the kernel for newer DRM features). N.B. on Slack64 with multilib the above means also compiling the 32 bit packages and converting the subsequent packages with Alien Bob's convertpkg-compat32 (compat32-tools) (BTW thanks Eric ;-)). I have toyed with writing these SlackBuilds with automatic dual 32/64 bit compilation but this becomes problematic for package management, especially for multiple machines.

Code:
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/mesa-$VERSION \
  --with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
  --with-dri-drivers="$DRI_DRIVERS" \
  --with-egl-platforms="$EGL_PLATFORMS" \
  --with-gallium-drivers="$GALLIUM_DRIVERS" \
  --enable-llvm-shared-libs \
  --enable-r600-llvm-compiler \
  --with-clang-libdir=/usr/lib${LIBDIRSUFFIX} \
  --enable-egl \
  --enable-gbm \
  --enable-gallium-llvm \
  --enable-shared-glapi \
  --enable-glx \
  --enable-glx-tls \
  --enable-dri \
  --enable-osmesa \
  --enable-gles1 \
  --enable-gles2 \
  --enable-texture-float \
  --enable-xa \
  --enable-vdpau \
  --enable-omx \
  --enable-nine \
  --enable-opencl --enable-opencl-icd \
  --build=$ARCH-slackware-linux

Last edited by fskmh; 01-08-2016 at 05:04 AM.
 
Old 01-08-2016, 06:09 AM   #8
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
OpenMAX support only really affect AMD GPUs, mainly embedded GPUs, so it's really optional. Plus libomxil-bellagio requires a patch to build at the latest release. Unless you're needing multimedia content support on AMD embedded GPUs, OpenMAX support is unnecessary.

DXTC/S3TC support isn't compiled in at any time, its dynamically loaded so you don't need it at build time. It's nice to have but only for games.

OpenCL however will require libclc from the llvm project and it's only available via git. The OpenCL ICD flag is fairly useless and will tend to break the compile. Not only this, but OpenCL support is limited to AMD only in hardware support, while Intel and Nouveau fallback to software support. At best it's moderately useful, yet equally useless.

The only real addition you might want to make is actually adding Gallium driver "ilo" for Intel chipsets to utilize Nine support for Wine. This, honestly, is the only useful addition anyone could make to the Mesa build other than adding Wayland support. That's it.

Last edited by ReaperX7; 01-08-2016 at 09:58 AM.
 
Old 01-08-2016, 07:03 AM   #9
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by fskmh View Post
It might be best to use the SlackBuilds from -current if you want to update your graphics stack (libdrm, llvm, mesa) on 14.1, just know that it involves recompiling a fair number of packages, as well as the kernel for newer DRM features).
Just to give people an actual idea of what all it entails, back in DEC of 2014, this involved recompiling 284 packages (although, 276 were recompiling X itself) and then recompiling everything again in a 32bit VM so I could generate the compat32 packages for multilib). It is very possible that in the year since, many more updated dependencies would be required to do the same thing with the newest versions of mesa. I think I just grabbed the -current version (at the time) for all but mesa, libdrm (since the latest mesa required a newer libdrm than was in -current), and the kernel (3.18 was brand new and Pat didn't have a config available for it, however, I later switched to his config when he made one available). Here's what I needed to update back then:

autoconf 2.69 (recompiled)
automake 1.11.5 -> 1.14.1
kernel 3.10.17 -> 3.18.0 (have since upgraded to 3.18.24)
libdrm 2.4.46 -> 2.4.58
libelf 0.8.13 (recompiled)
libevdev 1.2 (added)
llvm 3.3 -> 3.4.2
mesa 9.1.7 -> 10.4 (have since upgraded to 10.4.7)
qt 4.8.5 -> 4.8.6
xorg 1.14.3 -> 1.15.2 (this was just the server version; I didn't want to list each xorg package individually, since it was 276 packages)
 
Old 01-08-2016, 10:25 AM   #10
fskmh
Member
 
Registered: Jun 2002
Location: South Africa
Distribution: Custom slackware64-current
Posts: 307

Rep: Reputation: 92
Quote:
Originally Posted by ReaperX7 View Post
OpenMAX support only really affect AMD GPUs, mainly embedded GPUs, so it's really optional. Plus libomxil-bellagio requires a patch to build at the latest release. Unless you're needing multimedia content support on AMD embedded GPUs, OpenMAX support is unnecessary.
Er, I think I said as much.

Quote:
Originally Posted by ReaperX7 View Post
DXTC/S3TC support isn't compiled in at any time, its dynamically loaded so you don't need it at build time. It's nice to have but only for games.
That's what I use it for. It seems relevant to the OP's situation too.

Quote:
Originally Posted by ReaperX7 View Post
OpenCL however will require libclc from the llvm project and it's only available via git. The OpenCL ICD flag is fairly useless and will tend to break the compile. Not only this, but OpenCL support is limited to AMD only in hardware support, while Intel and Nouveau fallback to software support. At best it's moderately useful, yet equally useless.
It's only useless if you don't have the other packages too, which I do. As I said in an earlier post I have added a lot of other packages.

Quote:
Originally Posted by ReaperX7 View Post
The only real addition you might want to make is actually adding Gallium driver "ilo" for Intel chipsets to utilize Nine support for Wine. This, honestly, is the only useful addition anyone could make to the Mesa build other than adding Wayland support. That's it.
Again, this is what I use it for, along with the d3d9 patch for wine. Also kind of relevant to the OP's situation since he might also play some games via wine like I do.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
error on libwayland-client sryzdn Linux - Newbie 0 11-08-2014 08:44 AM
LXer: Doom 3 Progresses On OpenGL ES 2.0, EGL LXer Syndicated Linux News 0 05-07-2012 10:31 PM
Problem: Upgrading Firefox, it requires pangocairo, which requires pango with cairo supports murtuzanaqvi Linux - Newbie 1 08-27-2010 06:58 AM
Adobe Acrobate Reader Requires A Plugin-That Requires Open LDAP That Requires Berkely Old_Fogie Slackware 10 05-08-2006 05:04 AM
running a game that requires a cd youssefe2k Linux - Games 2 04-02-2004 11:23 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:47 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration