GModCEFCodecFix icon indicating copy to clipboard operation
GModCEFCodecFix copied to clipboard

Linux: Fix libcups.so missing on some distros

Open MoccoCoffee opened this issue 3 years ago • 5 comments

I tried running Garry's Mod (64-bit version with Chromium) and used the patch that you provided to run the game. Everything loads, however the menu does not appear. Looking at the console, I've noticed that both "html_chromium_client" and "html_awesomium_client" are failing to load. These files are present, if they weren't, then the console would say "No such file or directory".

That's what the console says about that: image

I tried verifying game files, running the patch for three-four times in a row, changing runners (the game starts with "Steam Linux Runtime" but it does not without it). I'm running Fedora 36 Workstation with AMDGPU drivers (if that could help). If you need me to send more logs or crashes, then say it. Thank you in advance.

MoccoCoffee avatar Jul 13 '22 12:07 MoccoCoffee

This is probably the relevant line:

GarrysMod/bin/linux64/libcef.so: undefined symbol: cupsEnumDests

Have you done the basic troubleshooting stuff like Verifying Game Integrity then running the tool again?

WinterPhoenix avatar Jul 14 '22 03:07 WinterPhoenix

I did every step written in the guide before opening this issue, so yeah, "verifying game integrity" does not solve the problem.

MoccoCoffee avatar Jul 17 '22 08:07 MoccoCoffee

Do you get the error about undefined symbol: cupsEnumDests both with and without the patch applied?

WinterPhoenix avatar Jul 20 '22 04:07 WinterPhoenix

I've ran into the same error on SteamOS (Steam Deck) with the console reporting the exact same errors for me too, including it pointing to cupsEnumDests.

Personally I only get the error after applying the patch, with the console showing no errors and the menu loading properly before applying the patch.

Done basic troubleshooting stuff too. I haven't found any direct fix for the undefined symbol and I'm not familiar enough with this to have a good idea of what could work here.

ssybersnek avatar Jul 28 '22 20:07 ssybersnek

I've researched this error and found out that it's lacking the CUPS library. You should put this library into "GarrysMod/bin/linux64" and the game will start after that. image

If your system is 64-bit, this library should be here somewhere. image Copy it to your game directory with this: sudo cp /usr/lib64/libcups.so.2 ~/.local/share/Steam/steamapps/common/GarrysMod/bin/linux64/libcups.so.2 Your game installation directory may be different, so type pwd to see where it's installed (Open Game Files, then open Terminal there)

I recommend the devs to put this library into the standard fix bundle to prevent this error from repeating again. Thank you for your time.

MoccoCoffee avatar Jul 30 '22 13:07 MoccoCoffee

Damn, chromium is such a bloated mess! Why would you ever need printing in Garry's Mod?

EntityinArray avatar Sep 29 '22 12:09 EntityinArray

Damn, chromium is such a bloated mess! Why would you ever need printing in Garry's Mod?

CEF is still a web browser, to be fair, and printing is a pretty standard web browser feature. I'm entirely not surprised it wants the printing service to be present.

AkikoKumagara avatar Oct 31 '22 21:10 AkikoKumagara

We should probably see if there is a way to disable printing in the CEF build and just not link against it.

JohnPeel avatar Nov 23 '22 07:11 JohnPeel

This should be solved as of Commit 8589422, since we're no longer building CEF with the CUPS library 🎉

WinterPhoenix avatar Jan 25 '23 09:01 WinterPhoenix