[Steam] Recently Civ VI stops to launch

steam-manjaro

#1

Hi,

When I try to launch Civ VI the following console output has appeared:

GameAction [AppID 289070, ActionID 2] : LaunchApp changed task to ProcessingInstallScript with ""
GameAction [AppID 289070, ActionID 2] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 289070, ActionID 2] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 289070, ActionID 2] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 289070, ActionID 2] : LaunchApp continues with user response "CreatingProcess"
Game update: AppID 289070 "", ProcID 5605, IP 0.0.0.0:0
>>> Adding process 5605 for game ID 289070
GameAction [AppID 289070, ActionID 2] : LaunchApp changed task to WaitingGameWindow with ""
GameAction [AppID 289070, ActionID 2] : LaunchApp changed task to Completed with ""
ERROR: ld.so: object '/home/gray/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/gray/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
./GameGuide/Civ6: symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var
>>> Adding process 5606 for game ID 289070
Game removed: AppID 289070 "", ProcID 5605 
No cached sticky mapping in ActivateActionSet.

Any help will be appreciated.


#2

A forum search of symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var will reveal more about the problem. :grinning:

Basically the game wants a libfontconfig older than available on Manjaro. There are several possible workarounds:

  1. Uninstall steam-native to force the game to run with the steam runtimes
  2. Use STEAM_RUNTIME=1 steam to launch with steam runtimes
  3. Alternatively it may be possible to run the game with the native runtimes by passing LD_PRELOAD=/usr/lib/libfreetype.so

Personally I would use number 2., but whatever you are comfortable with. :wink:


#3

I’ve had some success in the past using LD_DEBUG=libs to find out where a game is looking for libraries and in what order.

In some cases, a game will check the executable’s folder, or a subdirectory therein, fairly early in the process. In such a case it’s fairly trivial to override system libraries by placing a symlink to a steam version of a library in the appropriate location.

Or in the case of an obscure/obsolete lib that I otherwise don’t have/want installed system wide, unpack a copy of the lib there only.


#4

Hi,

  1. Nothing to uninstall :wink:
$ pacman -Qs steam
local/steam-devices 0.2-2
    Udev rules for controllers to work with steam
local/steam-manjaro 1.0.0.56-1
    Valve's digital software delivery system
  1. Same issue:
$ STEAM_RUNTIME=1 steam steam://rungameid/289070

ERROR: ld.so: object '/home/gray/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/gray/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
./GameGuide/Civ6: symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var
  1. It works:
$ LD_PRELOAD=/usr/lib/libfreetype.so  steam steam://rungameid/289070

Thanks a lot!


#5

I had the same issue with the game but I also didn’t have libfreetype.so. So to fix that I used
pacman -S freetype2. Just in case someone else has the same problem as me.

Thanks a lot guys!


#6

It loads now but this causes my video card selection in-game to be forced to Intel rather than my nvidia. I’m using nvidia prime.


#7

I would recommend to try the Flatpak version of Steam just to see if you still have the same issues.
To access your installed games set permissions with:

flatpak override --user --filesystem=/path/to/your/other/games com.valvesoftware.Steam


#8

Try using
$ LD_PRELOAD=/usr/lib/libfreetype.so steam to launch steam and then specifying as a launch option from within steam (right-click on game in library) for Civ6 either primusrun %command% or optirun %command%.


#9

Unfortunately this does not work out for me. It is still displaying that I use my intel HD graphics. What I do think is that I am still using my dedicated GPU but I cannot confirm that. Is there a way to check this easily?
Can it be a bug in Civ IV that it only shows you intel HD graphics when you run optirun or primusrun? Or do some people see the dedicated graphics card there?


#10

You could try
lspci -nnk | grep -i vga -A3 | grep 'in use'
to see the current vga kernel driver (hence GPU in use assuming they are different brands)

It is possible that it is a bug in the Civilization games to misreport the gpu on steam. This was certainly happening for some users with Civ V on windows.

I don’t run dual graphic cards (currently) so can’t respond to your third question. :smiley:


#11

Thank you for the answer!
When I run Civ VI and execute the command I get the following output.

➜  ~  lspci -nnk | grep -i vga -A3 | grep 'in use'
	Kernel driver in use: i915
➜  ~ lspci -knn | grep -EA2 'VGA|3D'
00:02.0 VGA compatible controller [0300]: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller [8086:0416] (rev 06)
	Subsystem: ASUSTeK Computer Inc. 4th Gen Core Processor Integrated Graphics Controller [1043:177d]
	Kernel driver in use: i915
--
01:00.0 3D controller [0302]: NVIDIA Corporation GM107M [GeForce 845M] [10de:1398] (rev a2)
	Subsystem: ASUSTeK Computer Inc. GM107M [GeForce 845M] [1043:177d]
	Kernel driver in use: nvidia

So it is indeed using the intel hd graphics unfortunately. I will dive into the bumblebee wiki once more :slight_smile:


#12

If you don’t have success with bumblebee there are a couple of other options for configuring your drivers.

A good overview of the common options here: [HowTo] Set up PRIME with NVIDIA proprietary driver and tutorial for setting up ‘prime’.

For ‘optimus manager’ see the thread here: Optimus Manager

If you are adventurous (or wanting to help test something new) it could also be worth looking at: Call for testing: optimus-switch

Better off replying in the relevant thread (or making a new one) than here if you have related questions/problems. :grinning: