The forum

problems with the openGL 32Bits librairies

Author Replies
sailx Monday 29 October 2012 at 11:08
sailxAnonymous

hy everyone.
I'm on Kubuntu (14.10)
I've a a problem, and I really don't know how to solve it :
When i run playonlinux on a consol, i get

playonlinux
[main] Message: PlayOnLinux (4.1.8) is starting
[clean_tmp] Message: Cleaning temp directory
[Check_OpenGL] Warning: 32bits direct rendering is not enabled
[Check_OpenGL] Message: 64bits direct rendering is enabled
[main] Message: Filesystem is compatible
[install_plugins] Message: Vérification de l'extension: Capture...
[install_plugins] Message: Vérification de l'extension: ScreenCap...
[install_plugins] Message: Vérification de l'extension: PlayOnLinux Vault...
/usr/share/playonlinux/bash/startup_after_server: ligne 38 : [:  : nombre entier attendu comme expression
/usr/share/playonlinux/bash/startup_after_server: ligne 38 : [:  : nombre entier attendu comme expression



and, on the debbug mode of Pol :


 Running wine-1.5.10 StarCraft II.exe (Working directory : /home/alexis/.PlayOnLinux/wineprefix/SC2_WoL/drive_c/Program Files/StarCraft II)
err:winediag:wined3d_dll_init The GLSL shader backend has been disabled. You get to keep all the pieces if it breaks.
fixme:process:GetLogicalProcessorInformation ((nil),0x32dca0): stub
err:winediag:X11DRV_WineGL_InitOpenglInfo Direct rendering is disabled, most likely your OpenGL drivers haven't been installed correctly (using GL renderer "Mesa DRI Intel(R) Ivybridge Mobile ", versiX Error of failed request:  GLXBadDrawable
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  290
  Current serial number in output stream:  290



I really don't know what to do, and piece of infomation I found was about Nvidia graphics ...

thanks you

Edited by sailx

sailx Sunday 4 November 2012 at 14:55
sailxAnonymous

nobody can help me ?
Quentin PÂRIS Sunday 4 November 2012 at 18:33
Quentin PÂRISAnonymous

[Check_OpenGL] Warning: 32bits direct rendering is not enabled

Install your drivers correctly
sailx Tuesday 6 November 2012 at 18:03
sailxAnonymous

thank you for your answer,
but how can i install correctly my drivers ?
and how does i know if it's not already installed ?

thank you
sailx Friday 9 November 2012 at 18:25
sailxAnonymous

If it can help, i'm on Kubuntu 64bit, and i've seen that it create problems ...
Thank you very much
eriksq Saturday 29 December 2012 at 20:08
eriksqAnonymous

This is how I did it in Fedora 17, using the rpmfusion non free repos.

For information on installing the rpmfusion libraries for RedHat flavors go here:  


You may also find this useful if you won't isntall rpmfusion but the file names will be different. The instructions below should work for RedHat and CentOS.  I hope this can be useful for those with other distros and at least hint at the correct package names for you.  

Debian/Ubuntu users, replace "yum" with "apt-get" and see what happens.  Play with the "apt-get search" command, as I'm almost sure the package names are different.  

I.  Install the vendor specific driver

First, my preference is to install the vendor's drivers instead of the distro's drivers.  Fedora is fanatical about staying free and open source, so you may not get these drivers on installation.  Other distros will vary.  

AMD has a unified driver so one size fits all.  Below is the command to use (login as root, or sudo before each command):

yum install xorg-x11-drv-catalyst

If you had nVidia, you have to know the series of card you have and then pick drivers accordingly. You can find the list with this string:

yum search xorg-x11-drv-nvidia-


Once you find your driver series, install the driver.  For instance, if you have a 96xx series card you'll do the following:

yum install xorg-x11-drv-nvidia-96xx

In either case, be sure to accept any dependencies.  You may notice a file ending in libs.x86_64.  That's the 64 bit library, which is fine, it will happily co-exist with the 32bit library which we will install in step II, below. 

If you have a 32 bit Fedora installed, you are done, because yum has automatically selected the 32 bit driver and library.  However, if you have 64 bit Fedora, you'll need to install the 32 bit library as well and should do step II, below.

Note:  
Yum will automatically select the greatest "bitness" your OS will handle.  For the driver, that's what you want, don't attempt to force 32bit drivers on a 64bit OS. The problem PlayOnLinux has is not with the driver bitness, but the library, which we fix below.  


II.  Install 32 bit library. 

Only after you have completed the step above can you install the supplemental 32 bit library. 

The key part in installing the 32 bit library is the -libs.i686 at the end of the package name.  Others may work such as i586, in case your distro uses those, just so long as you are avoiding the x86_64 packages, which are the 64 bit versions you will be successful. 

Example for AMD: 

 yum install xorg-x11-drv-catalyst-libs.i686

Note that with AMD cards, you'll have to use catalyst to set the display settings, such as multi-monitor support from now on.  Doing it from the desktop settings WILL NOT PERSIST, if they work at all.

Example for Nvidia 96xx series:

yum install xorg-x11-drv-nvidia-96xx-libs.i686

As above, accept any dependencies. 

Sorry I do not have nVidia cards, so I cannot test these scripts.  Hopefully this is enough information for most people to be successful.   Similar scripts probably work for other vendors.


Good luck,


Erik

Edited by eriksq

petch Saturday 29 December 2012 at 20:42
petch


Hi,

The solution is both depend on the distribution used and on the hardware, so it's difficult to give one single link that will provide the Right Solution (tm) to everyone.

Specially since we do not have all possible hardware not all possible distros, so, guys, if you want that you'd better organise all together to create it.

Edited by petch

eriksq Saturday 29 December 2012 at 21:03
eriksqAnonymous

I see your point, but a little bit of help would have really helped. Like, common package names in a distro you do know about would have been great, then we could have searched for them in our own. As it was, I went through about half a dozen threads on various websites about this issue, most of which were wrong. Hahahah
DrLove73 Saturday 29 June 2013 at 23:10
DrLove73Anonymous

For CentOS (and RHEL and SL) you can install driver from www.elrepo.org

You install then only once for all kernels.

nvidia has few version, I used legacy 304 so my command for installing drivers is:

yum install kmod-nvidia-304xx

It will install kmod-nvidia-304xx.x86_64 and nvidia-x11-drv-304xx.x86_64

For the purpose of PlayOnLinux I also had to install nvidia-x11-drv-304xx-32bit.x86_64 with:

yum install nvidia-x11-drv-304xx-32bit.x86_64
Ronin DUSETTE Sunday 30 June 2013 at 7:03
Ronin DUSETTE

Yeah. You will for sure always have to install the proprietary drivers as DrLove73 states for those distros to play games correctly. Otherwise, there will be no hardware acceleration.

Thanks for your input, Dr. :)

Please:
Post debug logs & full computer specs in first post
No private messages for general help, use the forums
Read the wiki, Report broken scripts
NightHaveN Thursday 12 June 2014 at 3:24
NightHaveNAnonymous

Sorry for raising an old post, but since I had today the same issue, but found the fix, I'm sharing it on this thread that found while looking at the issue.

Ubuntu and derivatives do not include many of the 32-bit libraries and drivers on a 64-bit installation by default.  You must install them manually.  These days (14.04 release in April 2014) they included a very recent PlayOnLinux on their default repositories that even if you do not keep it, you can see at most of the 32-bit dependencies and copy them from there.  The full apt command to install those deps is:

sudo apt-get install curl gcc-4.8-base:i386 gcc-4.9-base:i386 icoutils imagemagick imagemagick-common libasn1-8-heimdal:i386 libasound2:i386 libasound2-plugins:i386 libasyncns0:i386 libc6:i386 libcgmanager0:i386 libcomerr2:i386 libcurl3 libdb5.3:i386 libdbus-1-3:i386 libdrm2:i386 libencode-locale-perl libexif12:i386 libexpat1:i386 libffi6:i386 libfile-listing-perl libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgcrypt11:i386 libgd3:i386 libgl1-mesa-glx:i386 libglapi-mesa:i386 libglib2.0-0:i386 libglu1-mesa:i386 libgnutls26:i386 libgpg-error0:i386 libgssapi3-heimdal:i386 libgstreamer-plugins-base0.10-0:i386 libgstreamer0.10-0:i386 libhcrypto4-heimdal:i386 libheimbase1-heimdal:i386 libheimntlm0-heimdal:i386 libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhx509-5-heimdal:i386 libio-html-perl libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libkrb5-26-heimdal:i386 liblcms2-2:i386 libldap-2.4-2:i386 liblqr-1-0 libltdl7:i386 liblwp-mediatypes-perl liblwp-protocol-https-perl liblzma5:i386 libmagickcore5 libmagickwand5 libmpg123-0:i386 libncurses5:i386 libnet-http-perl libnih-dbus1:i386 libnih1:i386 libogg0:i386 libopenal1:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpcre3:i386 libpng12-0:i386 libpulse0:i386 libroken18-heimdal:i386 libsasl2-2:i386 libsasl2-modules-db:i386 libselinux1:i386 libsndfile1:i386 libsqlite3-0:i386 libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386 libudev1:i386  libusb-1.0-0:i386 libvorbis0a:i386 libvorbisenc2:i386 libvpx1:i386 libwind0-heimdal:i386 libwrap0:i386 libwww-perl libwww-robotrules-perl libwxbase2.8-0 libwxgtk-media2.8-0 libwxgtk2.8-0 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxml2:i386 libxpm4:i386 libxshmfence1:i386 libxxf86vm1:i386 ocl-icd-libopencl1 ocl-icd-libopencl1:i386 p7zip-full python-wxgtk2.8 python-wxversion zlib1g:i386 libmagickcore5-extra netpbm libgl1-mesa-dri:i386  libhtml-format-perl libgpm2:i386 libsasl2-modules:i386 libhtml-form-perl libhttp-daemon-perl winbind libcapi20-3 libosmesa6 libp11-kit-gnome-keyring unixodbc libcapi20-3:i386 libcups2:i386 libgif4:i386 libosmesa6:i386 libp11-kit-gnome-keyring:i386 libsane:i386 libv4l-0:i386 libxcomposite1:i386 libxcursor1:i386 libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxslt1.1:i386 libxt6:i386 p11-kit-modules:i386

The only thing missing from that line is the actual driver.  On a standard installation the drivers used are opensource and probably is either: radeon, noveau, or intel.  Except for Intel hardware, the recommended for gaming is the proprietary driver.  In my case, I just downloaded the ATI Catalyst 14.6 beta installer from AMD site, run it, reboot and done.  In case of using an opensource driver, you need the libgl1-mesa-dri:i386 libgl1-mesa-glx:i386 and the video driver, usually called something like libdrm-(brand here):i386.  Proprietary drivers do not use mesa, so even if those are installed, are ignored.

One last note, the PlayOnLinux included in Ubuntu 14.04 and probably Debian Jessie/Sid too lack the test to check whenever 32-bit and 64-bit rendering is enable.  I recommend skipping Ubuntu PlayOnLinux binary, and just grab the generic tar.gz from this site.

 

 

Edited by NightHaveN