Steam for Linux > Limited Beta > 主题详情
AnAkkk 2012年11月19日上午8:09
Issue Report: Running TF2 with optirun
My laptop has Nvidia Optimus, so I have to use "optirun" if I want run a program on the Nvidia video card. If I don't TF2 will start on the Intel card, and will always show up shader compilation errors.

The problem is that optirun doesn't work for TF2 for some reason:

$ LANG=C LC_NUMERIC=C SteamAppId=440 optirun --debug ./hl2.sh -dev -console -game tf -novid
[ 5336.289984] [DEBUG]optirun version 3.0.1 starting...
[ 5336.290026] [DEBUG]Active configuration:
[ 5336.290030] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[ 5336.290034] [DEBUG] X display: :8
[ 5336.290037] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia-current:/usr/lib32/nvidia-current
[ 5336.290041] [DEBUG] Socket path: /var/run/bumblebee.socket
[ 5336.290044] [DEBUG] VGL Compression: proxy
[ 5340.133608] [INFO]Response: Yes. X is active.

[ 5340.133626] [INFO]Running application through vglrun.
[ 5340.133741] [DEBUG]Process vglrun started, PID 6144.
Xlib: extension "NV-GLX" missing on display ":0.0".
X Error of failed request: BadAlloc (insufficient resources for operation)
Major opcode of failed request: 154 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Serial number of failed request: 75
Current serial number in output stream: 76
[ 5340.334186] [DEBUG]SIGCHILD received, but wait failed with No child processes
[ 5340.334245] [DEBUG]Socket closed.
[ 5340.334272] [DEBUG]Killing all remaining processes.

It works fine for some other games such as Urban Terror.

It will run if I specify DISPLAY=:8, but this is not an option as there won't be any video output.
最后由 AnAkkk 编辑于; 2012年11月19日上午8:10
正在显示第 1 - 3 条,共 3 条留言
< >
AnAkkk 2012年11月20日上午4:43 
I've got TF2 to work with primusrun:

1) Open hl2.sh, comment the following line:
export LD_PRELOAD=$(dirname ${STEAMPATH})/gameoverlayrenderer.so
2) LANG=C LC_NUMERIC=C SteamAppId=440 vblank_mode=0 primusrun ./hl2.sh -steam -console -game tf -novid

EDIT:

The problem is that I can't connect to any server then, as it tells me that game is in insecure mode.

EDIT 2:
Nevermind, it works now, it was just missing -steam
最后由 AnAkkk 编辑于; 2012年11月20日上午7:01
Tower_9 2012年12月6日下午10:32 
I'm also using optirun to start steam. When I try to run TF2:
Game update: AppID 440 "Team Fortress 2", ProcID 12029, IP 0.0.0.0:0
ERROR: ld.so: object 'gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded: ignored.
saving roaming config store to 'sharedconfig.vdf'
roaming config store 2 saved successfully
ERROR: ld.so: object 'gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object 'gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object 'gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object 'gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object 'gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded: ignored.
Xlib: extension "NV-GLX" missing on display ":0".
Xlib: extension "NV-GLX" missing on display ":0".
Xlib: extension "NV-GLX" missing on display ":0".
SDL video target is 'x11'
SDL video target is 'x11'
Xlib: extension "NV-GLX" missing on display ":0".
SDL failed to create GL compatibility profile (whichProfile=0!
PROBLEM: You appear to have OpenGL 1.4.0, but we need at least 2.0.0!
Could not find required OpenGL entry point 'glGetError'! Either your video card is unsupported, or your OpenGL driver needs to be updated.
Game removed: AppID 440 "Team Fortress 2", ProcID 12029
saving roaming config store to 'sharedconfig.vdf'
roaming config store 2 saved successfully
正在显示第 1 - 3 条,共 3 条留言
< >
每页显示数: 15 30 50
发帖日期: 2012年11月19日上午8:09
帖子数: 3