Warband in Linux

Users who are viewing this thread

Thanks again, and apologies for being ignorant of terminal commands. I tried these scenarios:

Regular Steam with regular Mount & Blade:
1. Launching from Steam: nothing (except a very quick flash of the screen).
2. Launching from terminal:

Code:
error while loading shared libraries: libGLEW.so.1.10: cannot open shared object file: No such file or directory

I checked and I have libglew2.0-2.0.0-5 (64-bit) and libglewmx1.13-1.13-4 (64-bit) installed.

Regular Steam with beta Mount & Blade:
1. Launching from Steam: same (nothing except a very quick flash of the screen).
2. Launching from terminal:

Code:
error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory

I have libcurl3-gnutls-7.58.0-2ubuntu3.3 (64-bit) and libcurl4-7.58.0-2ubuntu3.3 (64-bit) installed.

I hope this helps in some way.
 
If you can launch Steam from the terminal you can see the error description after clicking Play. So we can see what is the problem here. If you want to play the game with sh file, please install the lib using "sudo apt-get install libcurl4-gnutls-dev:i386" and try again.
 
This is the terminal log when trying to launch the beta game from Steam. Because it's the first attempted launch, it goes through the config setup:

Code:
GameAction [AppID 48700, ActionID 1] : LaunchApp waiting for user response to ShowLaunchOption ""
GameAction [AppID 48700, ActionID 1] : LaunchApp continues with user response "0"
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to ShowCDKey with ""
GameAction [AppID 48700, ActionID 1] : LaunchApp waiting for user response to ShowCDKey ""
GameAction [AppID 48700, ActionID 1] : LaunchApp continues with user response ""
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to ProcessingInstallScript with ""
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to SynchronizingCloud with ""
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 48700, ActionID 1] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 48700, ActionID 1] : LaunchApp continues with user response "CreatingProcess"
Opted-in Controller Mask: 70
Game update: AppID 48700 "", ProcID 3502, IP 0.0.0.0:0
>>> Adding process 3502 for game ID 48700
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to WaitingGameWindow with ""
ERROR: ld.so: object '/home/username/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/username/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
GameAction [AppID 48700, ActionID 1] : LaunchApp changed task to Completed with ""
>>> Adding process 3503 for game ID 48700
Game update: AppID 48700 "", ProcID 3504, IP 0.0.0.0:0
Setting breakpad minidump AppID = 48700
Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198005361193 [API loaded no]
>>> Adding process 3504 for game ID 48700
ERROR: ld.so: object '/home/username/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 3506 for game ID 48700
>>> Adding process 3507 for game ID 48700
process 3504: arguments to dbus_message_new_method_call() were incorrect, assertion "path != NULL" failed in file ../../dbus/dbus-message.c line 1201.
This is normally a bug in some application using the D-Bus library.
Segmentation fault (core dumped)
Game removed: AppID 48700 "", ProcID 3504 
No cached sticky mapping in ActivateActionSet.Installing breakpad exception handler for appid(steam)/version(1536436120)
 
I installed libcurl4-gnutls-dev:i386 and tried launching again from the terminal:

Code:
error while loading shared libraries: libsndio.so.6.1: cannot open shared object file: No such file or directory

I then installed libsndio-dev:i386, but received this error:

Code:
Setting breakpad minidump AppID = 48700
Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198005361193 [API loaded no]
Segmentation fault (core dumped)
 
I also suggest trying these steps again with a Beta opted in Steam. We tried and still continue to try on different computers with different specs and we don't have any issues launching the game on our end. We are looking into the source of this problem.
 
Okay, so there was a new patch and now the game doesn't run at all on my computer. Like like Couscous' case, the game window doesn't even appear. Opting in beta or opting out doesn't work. I tried to log Steam and got this:

Code:
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
/home/user/.local/share/Steam/steamapps/common/MountBlade Warband/mb_warband_linux: /lib/i386-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /home/user/.local/share/Steam/steamapps/common/MountBlade Warband/mb_warband_linux)

Apparently Ubuntu 16.04 doesn't have GLIBC_2.27 yet, so I'm basically boned. I'd really appreciate it if this gets fixed quickly. Even my patience is starting to wear thin after all these crash-inducing patches we've been getting this past year.
 
Sky Warden said:
Okay, so there was a new patch and now the game doesn't run at all on my computer. Like like Couscous' case, the game window doesn't even appear. Opting in beta or opting out doesn't work. I tried to log Steam and got this:

Code:
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
/home/user/.local/share/Steam/steamapps/common/MountBlade Warband/mb_warband_linux: /lib/i386-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /home/user/.local/share/Steam/steamapps/common/MountBlade Warband/mb_warband_linux)

Apparently Ubuntu 16.04 doesn't have GLIBC_2.27 yet, so I'm basically boned. I'd really appreciate it if this gets fixed quickly. Even my patience is starting to wear thin after all these crash-inducing patches we've been getting this past year.
We are aware of this issue and working to fix it.
 
I too am having the same problem lauching the game in Steam on Linux, after the recent patch. Hopefully the below helps in tracking down the issue.

OS: Ubuntu 16.04 (64 bit) LTS - fully up to date
Last time game played: 25 Sept 2018
Steam updated today: 8 Oct 2018

On attempting to start the game via Steam, the Status area goes from 'Ready to Play' to 'Running' and then back to 'Ready to play' almost immediately. Game fails to start. Prior to the patch (25 Sept), the game worked fine

Have cleared out ~/.mbwarband of save files and config files (its empty now) in case they were the problem, but clearly not.

Attempting to run  the game in a terminal

cd "~/.local/share/Steam/steamapps/common/MountBlade Warband"
./mb_warband.sh


Gives me the following output

./mb_warband_linux: error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory

Using locate to find the library mentioned

locate libcurl-gnutls.so.4

informs me that the file is here...

/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4
/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.4.0


Searching for the package that installed this library;

dpkg -S /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4

yields

libcurl3-gnutls:amd64: /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4

So the 64-bit version of the file is present.

I'm pretty sure that no OS updates had been run between the last time I played the game and the update to the version of the game on Steam.

I did update the OS after the new steam version failed to work, just in case it was needed but this did not help.

Hope this helps. Please let me know if there is anything you'd like me to try.

I look forward to being able to get back to skewering Swadians soon, I hope!  :smile:
 
From what I can gather, the bug is most likely caused by GLIBC. Here's the cases:

People with the newest distro (Ubuntu 1:cool: like Couscous:
Segmentation fault. No other details yet.

People with distro older than Ubuntu 18 or its equivalent:
Can't meet the libc version requirement. Only version 2.23 is available to those distros while 2.27 is needed.
When you try overriding their libc with version 2.27 you copy from those newer distros, you get segmentation fault, just like the case with Ubuntu 18.

I suggest rolling back to the most stable version that most distros still use. It's usually a bad idea to force your software to link with the latest version of a library, unless you really need that new update and know what you're doing. It disturbs compatibility and you will get new bugs that haven't been discovered yet, either from the library itself or by a change of syntax the new version could have.

Those "error while loading shared libraries" errors people get from trying to run the executables directly from command line are caused by incorrect library linking. Steam has those libraries and links them for you when you run it from Steam.
 
Apologies. I should have re-read the other posts before posting the exact same info. Doh!

I can confirm that my GLIBC is v 2.23.
And running steam from the console and then launching the game from there does give me the exact same error as Sky Warden got regarding GLIBC.
 
I find a way to install previous version by following https://www.reddit.com/r/Steam/comments/611h5e/guide_how_to_download_older_versions_of_a_game_on/ this guide.

The manifest: https://steamdb.info/depot/48703/manifests/
Code:
download_depot 48700 48703 7269461115939809640
This download a previous version for Mount and Blade Warband to /home/user/.local/share/Steam/ubuntu12_32/steamapps/content/app_48700/depot_48703

Copy this files to game directory. Then open game with Steam.

I tested this on Debian and was able to play multiplayer. Didn't try  anything else.

Also you can download files from https://files.mountbladebannerlord.com/mountandblade/warband/depot_48703.tar.gz here.

 
Excellent digging there!

Many thanks!

I can confirm that this works and allows you to revert to the previous version and everything looks like it works OK.

The easiest way to access the console in Steam is to run steam from a terminal with the '-console' option ie.

Code:
steam -console

This then gives you a Console tab in Steam.
 
Thank you very much! I'll stick with the March 14 2017 version as I find it to be the most stable version and has the best performance. The January 17 2018 version crashes a lot on my computer, so if you only play single player, I recommend the March 2017 version.
 
I got a problem similar to what Couscous experiences:
Couscous said:
Code:
process 3504: arguments to dbus_message_new_method_call() were incorrect, assertion "path != NULL" failed in file ../../dbus/dbus-message.c line 1201.
This is normally a bug in some application using the D-Bus library.
Segmentation fault (core dumped)

After upgrading Ubuntu and Warband the latter is not working anymore.
I get the following warning:
Code:
konsti@Konsti-TowerPC:~$ "/media/disk/Games/Mount Blade Warband/start.sh"
Running Mount & Blade: Warband
dbus[26512]: arguments to dbus_message_new_method_call() were incorrect, assertion "path != NULL" failed in file ../../../dbus/dbus-message.c line 1362.
This is normally a bug in some application using the D-Bus library.

  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted (core dumped)

This is what I get, I tried installing different versions of Warband / Viking Conquest, always the same result...
If you have any idea for further research I'm happy to provide the information needed.

Currently installed:
Mount & Blade: Warband, 2.9.0.17
Viking Conquest: 2.12.0.16

Here's some system info:
Got the Warband installation files from gog.com
Ubuntu 18.04.1 LTS 64-bit
GNOME 3.28.2
dbus 1.12.2-1ubuntu1
Intel(R) Xeon(R) CPU E5-1650 0 @ 3.20GHz
Nvidia Quadro 2000
 
I recently got the new version "Patch 2.044 (04 October 201:cool:" from GOG, which when I tried to start it up gave me:
Code:
$ ./start.sh
Running Mount & Blade: Warband
./mb_warband_linux: error while loading shared libraries: libsndio.so.6.1: cannot open shared object file: No such file or directory
I'm running Arch Linux (x86_64) with mulitlib enabled.
So then I got the current version of sndio (sndio.org), compiled libsndio (which is libsndio.so.7.0, which fortunately seems to be compatible with 6.1) with the 32-bit target and created a symbolic link inside the game-folder of the mb-warband's root folder, roughly like this:
Code:
$ wget 'http://www.sndio.org/sndio.tar.gz'
$ tar -xzf sndio.tar.gz
$ cd sndio
$ ./configure
$ cd libsndio
$ make CFLAGS=-m32 SO_CFLAGS=-m32
$ ln -s /full/path/to/sndio/libsndio/libsndio.so.7.0 /path/to/mbwarband/game/libsndio.6.1
after which I was able to get the game running.
 
    Hi!
    Up to some months ago I've played Warband (both Native & Viking Conquest; no mods at that time), then I took a break.
    I'm using the steam version on a Linux Mint rig. Kinda' old but does the job.
    Now I've tried again, after some Steam updates - and when to start - not working any more.
    If i try to open from steam it does nothing, if run mb_warband.sh in terminal i get error (below)

    /mb_warband.sh: line 1: #!/bin/sh: No such file or directory
    ./mb_warband_linux: error while loading shared libraries: libsndio.so.6.1: cannot open shared object file: No such file or directory

    i checked, I already have the required library (see below)
    apt-get install libsndio6.1
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    libsndio6.1 is already the newest version (1.1.0-2).
    libsndio6.1 set to manually installed.
    0 upgraded, 0 newly installed, 0 to remove and 42 not upgraded.

    Can someone help?
    Strange thing is that "Fire and Sword" works ok...
    Also to be noted that the launcher that lets me chose between Native, Viking Conquest, Napoleonic Wars and other modules also works OK.

    So I'm guessing that main game files are OK, the problem must be somewhere in the different launcher (from fire and sword) that Warband has or in the scripts of Warband (or in mb_warband.sh)

    Contents of mb_warband.sh below:

    #!/bin/sh

    STEAM_RT="${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/i386"
    PROGRAM_DIRECTORY="`dirname "$0"`"
    export LD_LIBRARY_PATH="${STEAM_RT}/lib/i386-linux-gnu:${STEAM_RT}/usr/lib/i386-linux-gnu:${PROGRAM_DIRECTORY}"

    "$PROGRAM_DIRECTORY/mb_warband_linux" "$@"


someone advised me to try "ldd mb_warband_linux" to get more info, here is the result

ldd mb_warband_linux
./mb_warband_linux: /lib/i386-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by ./mb_warband_linux)
linux-gate.so.1 =>  (0xf77f1000)
libGL.so.1 => /usr/lib32/nvidia-384/libGL.so.1 (0xf76ad000)
libGLEW.so.2.1 => not found
libSDL2-2.0.so.0 => not found
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf768f000)
libcurl-gnutls.so.4 => /usr/lib/i386-linux-gnu/libcurl-gnutls.so.4 (0xf7615000)
libfmodex.so => not found
libsteam_api.so => not found
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf749d000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7448000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf742b000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7275000)
/lib/ld-linux.so.2 (0x56629000)
libnvidia-tls.so.384.130 => /usr/lib32/nvidia-384/tls/libnvidia-tls.so.384.130 (0xf7270000)
libnvidia-glcore.so.384.130 => /usr/lib32/nvidia-384/libnvidia-glcore.so.384.130 (0xf526d000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf5122000)
libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf510d000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf5108000)
libidn.so.11 => /usr/lib/i386-linux-gnu/libidn.so.11 (0xf50d4000)
librtmp.so.1 => /usr/lib/i386-linux-gnu/librtmp.so.1 (0xf50b3000)
libnettle.so.6 => /usr/lib/i386-linux-gnu/libnettle.so.6 (0xf5076000)
libgnutls.so.30 => /usr/lib/i386-linux-gnu/libgnutls.so.30 (0xf4f1e000)
libgssapi_krb5.so.2 => /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 (0xf4ecc000)
liblber-2.4.so.2 => /usr/lib/i386-linux-gnu/liblber-2.4.so.2 (0xf4ebc000)
libldap_r-2.4.so.2 => /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 (0xf4e60000)
libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf4e45000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf4e1f000)
libhogweed.so.4 => /usr/lib/i386-linux-gnu/libhogweed.so.4 (0xf4dea000)
libgmp.so.10 => /usr/lib/i386-linux-gnu/libgmp.so.10 (0xf4d5e000)
libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xf4cfc000)
libtasn1.so.6 => /usr/lib/i386-linux-gnu/libtasn1.so.6 (0xf4ce7000)
libkrb5.so.3 => /usr/lib/i386-linux-gnu/libkrb5.so.3 (0xf4c11000)
libk5crypto.so.3 => /usr/lib/i386-linux-gnu/libk5crypto.so.3 (0xf4be0000)
libcom_err.so.2 => /lib/i386-linux-gnu/libcom_err.so.2 (0xf4bdb000)
libkrb5support.so.0 => /usr/lib/i386-linux-gnu/libkrb5support.so.0 (0xf4bcd000)
libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf4bb4000)
libsasl2.so.2 => /usr/lib/i386-linux-gnu/libsasl2.so.2 (0xf4b96000)
libgssapi.so.3 => /usr/lib/i386-linux-gnu/libgssapi.so.3 (0xf4b4f000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf4b4b000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf4b43000)
libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xf4b3a000)
libkeyutils.so.1 => /lib/i386-linux-gnu/libkeyutils.so.1 (0xf4b35000)
libheimntlm.so.0 => /usr/lib/i386-linux-gnu/libheimntlm.so.0 (0xf4b2b000)
libkrb5.so.26 => /usr/lib/i386-linux-gnu/libkrb5.so.26 (0xf4a93000)
libasn1.so.8 => /usr/lib/i386-linux-gnu/libasn1.so.8 (0xf49e1000)
libhcrypto.so.4 => /usr/lib/i386-linux-gnu/libhcrypto.so.4 (0xf49a8000)
libroken.so.18 => /usr/lib/i386-linux-gnu/libroken.so.18 (0xf4990000)
libwind.so.0 => /usr/lib/i386-linux-gnu/libwind.so.0 (0xf4966000)
libheimbase.so.1 => /usr/lib/i386-linux-gnu/libheimbase.so.1 (0xf4955000)
libhx509.so.5 => /usr/lib/i386-linux-gnu/libhx509.so.5 (0xf4904000)
libsqlite3.so.0 => /usr/lib/i386-linux-gnu/libsqlite3.so.0 (0xf4823000)
libcrypt.so.1 => /lib/i386-linux-gnu/libcrypt.so.1 (0xf47f1000)

any ideeas how to fix it?
 
vladase said:
Up to some months ago I've played Warband (both Native & Viking Conquest; no mods at that time), then I took a break.
I'm using the steam version on a Linux Mint rig. Kinda' old but does the job.
Now I've tried again, after some Steam updates - and when to start - not working any more.
If i try to open from steam it does nothing, if run mb_warband.sh in terminal i get error (below)
The latest version of Warband is broken at the moment. I recommend you to install an older version of the game. Eparlak posted the tutorial above. That should let you play normally.

To give you more details about those errors you're having, Steam has most of the libraries the game needs and links (loads) them automatically. When you run the script directly, you will get "could not load library" errors because the script is looking for those libraries directly in your system, and couldn't find them. Long story short, you're supposed to run the Steam version of the game through the Steam launcher.
 
did like you said and it works now. thank you!
time to kill that Targaryen ***** and put the Iron Throne back in the hands of the Lannisters, where it belongs :smile:
 
Callum_TaleWorlds said:
We put out a 64-bit beta build for macOS and Linux distributions last night in preparation for future updates to these operating systems. You can read more about how to access the build here:

https://www.taleworlds.com/en/Games/Warband/News/257
 
Back
Top Bottom