You are not logged in.

#1 2016-04-22 09:58:32

hynner
Member
Registered: 2016-02-18
Posts: 20

[SOLVED] bumblebee for 32bit applications on 64bit system

Hello, I have a 64bit arch installed and I'd like to use bumblebee to run some 32bit apps. However it doesn't work with optirun/primusrun.

Here is a debug output for nvidia gpu (GTX 960M):

$ optirun --debug glxspheres32
[11834.147545] [DEBUG]optirun version 3.2.1-18-g3c6f9c9 starting...
[11834.147583] [DEBUG]Active configuration:
[11834.147589] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[11834.147594] [DEBUG] X display: :8
[11834.147599] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia:/usr/lib32/nvidia
[11834.147605] [DEBUG] Socket path: /var/run/bumblebee.socket
[11834.147610] [DEBUG] Accel/display bridge: auto
[11834.147618] [DEBUG] VGL Compression: proxy
[11834.147623] [DEBUG] VGLrun extra options: 
[11834.147633] [DEBUG] Primus LD Path: /usr/lib/primus:/usr/lib32/primus
[11834.147659] [DEBUG]Using auto-detected bridge primus
[11835.103059] [INFO]Response: Yes. X is active.

[11835.103073] [INFO]Running application using primus.
[11835.103158] [DEBUG]Process glxspheres32 started, PID 12203.
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
Visual ID of window: 0xd2
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  27
  Current serial number in output stream:  28
[11835.123582] [DEBUG]SIGCHILD received, but wait failed with No child processes
[11835.123642] [DEBUG]Socket closed.
[11835.123675] [DEBUG]Killing all remaining processes.

It works fine without optirun:

$ glxspheres32
Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)
Visual ID of window: 0xd2
Context is Direct
OpenGL Renderer: Mesa DRI Intel(R) HD Graphics 530 (Skylake GT2) x86/MMX/SSE2

I checked Bumblebee page on arch wiki and as far as I can tell I should have all the recommended libraries installed.

Here are all 32bit libraries on my system:

$ pacman -Qqs lib32-*
lib32-acl
lib32-alsa-lib
lib32-attr
lib32-bzip2
lib32-elfutils
lib32-expat
lib32-flac
lib32-fontconfig
lib32-freetype2
lib32-gcc-libs
lib32-gettext
lib32-glib2
lib32-glibc
lib32-glu
lib32-harfbuzz
lib32-icu
lib32-json-c
lib32-lcms2
lib32-libasyncns
lib32-libcap
lib32-libdbus
lib32-libdrm
lib32-libffi
lib32-libgcrypt
lib32-libglvnd
lib32-libgpg-error
lib32-libice
lib32-libidn
lib32-libjpeg-turbo
lib32-libmng
lib32-libnl
lib32-libogg
lib32-libpcap
lib32-libpciaccess
lib32-libpng
lib32-libpulse
lib32-libsm
lib32-libsndfile
lib32-libtiff
lib32-libtxc_dxtn
lib32-libusb
lib32-libvorbis
lib32-libx11
lib32-libxau
lib32-libxcb
lib32-libxcursor
lib32-libxdamage
lib32-libxdmcp
lib32-libxext
lib32-libxfixes
lib32-libxi
lib32-libxml2
lib32-libxrandr
lib32-libxrender
lib32-libxshmfence
lib32-libxss
lib32-libxtst
lib32-libxv
lib32-libxxf86vm
lib32-llvm-libs
lib32-mesa
lib32-mesa-libgl
lib32-ncurses
lib32-nvidia-utils
lib32-openssl
lib32-pcre
lib32-qt4
lib32-readline
lib32-sqlite
lib32-systemd
lib32-util-linux
lib32-v4l-utils
lib32-virtualgl
lib32-wayland
lib32-xz
lib32-zlib

As you can see lib32-mesa, lib32-mesa-libgl, lib32-nvidia-utils and lib32-virtualgl are all installed. Do I need some other 32bit libraries as well? I also have all updates installed.

Thanks.

EDIT: I solved the issue - turns out, I was missing lib32-primus package. It works now.

Last edited by hynner (2016-04-22 14:01:52)

Offline

#2 2016-04-22 13:23:33

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

Re: [SOLVED] bumblebee for 32bit applications on 64bit system

please post optirun glxinfo32 | grep renderer ouput


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

#3 2016-04-22 13:51:14

hynner
Member
Registered: 2016-02-18
Posts: 20

Re: [SOLVED] bumblebee for 32bit applications on 64bit system

Thanks for quick reply. There is the output you requested (+ some other variants):

$ optirun glxinfo32 | grep renderer
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  37
  Current serial number in output stream:  38


$ glxinfo32 | grep renderer
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 530 (Skylake GT2) x86/MMX/SSE2


$ optirun glxinfo | grep renderer
OpenGL renderer string: GeForce GTX 960M/PCIe/SSE2

Offline

Board footer

Powered by FluxBB