How to fix the 'CURL_OPENSSL_3' issue?

This is an issue reported many times in the past already.


SC is looking fro a several years old, VERY OUTDATED version of CURL_OPENSSL which is not present in any recent version of cURL.


Because of this, StarConflict cannot be started directly without Steam.


This does not only prevent you from activating Invasion beta access if you got a code, but also it makes it impossible to log into the game when Steam’s login is down.


Trying to run the excutable outside of Steam will result in:

./StarConflict: /usr/lib32/ version `CURL_OPENSSL_3' not found (required by ./StarConflict)
./StarConflict: /usr/lib32/ no version information available (required by ./StarConflict)

One workaround would be downgrading to an ancient version, but it’s so old it’s not even in Arch Linux’s downgrade repositories anymore.


Now, it DOES work through Steam however, which means `CURL_OPENSSL_3’ is somewhere there in Steam. Actually, searching for “curl” in .steam gives a lot of results, several files are there but I have no idea how to tell SC to use them.



So… how can I work this around without downgrade? Is there a way to provide the executable with `CURL_OPENSSL_3’ from Steam’s files?



Other threads about the same issue:

[](< base_url >/index.php?/topic/23228-starconflict-crashes-due-to-missing-packages-manjaro-linuxarch-linux/?hl=openssl_3)

[](< base_url >/index.php?/topic/22850-intel-hd-3000-in-archlinux-crashes-on-startup/?hl=openssl_3)

[](< base_url >/index.php?/topic/22870-is-sc-incompatible-with-the-intel-hd3000-gpu/?hl=openssl_3)

[](< base_url >/index.php?/topic/22899-intel-hd-4000-on-arch-linux-game-isnt-launching/?hl=openssl_3)

[](< base_url >/index.php?/topic/22923-game-requires-outdated-version-of-libcurlopenssl/?hl=openssl_3


Try creating softlinks (ln -s) in /usr/lib32/ which point to the libs, that have those required symbols.

Also u might wanne do a “readelf -Ws <> | grep <symbolname>” to filter the libs which actually contain them.

Another way might be extending the search path for the loader by the steam folder containing the outdated crap.


Edit: Also this might help:

^This might be even what steam is really doing, when executing Starconflict. It might has a wrapper script for the binary. U could use this to start SC, not sure though.

as you can see in the other thread where i quote a working start script [here](< base_url >/index.php?/topic/24008-cant-start-game-in-lubuntu/?p=279172), steam starts by setting ld_library_paths to staticly linked libraries in the steam folder.

since all steam apps are linked to these libraries, which steam ships, you have to ask Steam, why they use such an old version of curl.

it’s a very bad idea anyway, to “fix the system libraries” so they match what star conflict uses. steam brings all these libraries for a reason, and if you want to create your own outside-of-steam runscript, just define correct LD_LIBRARY_PATHs.

a oneliner would be

LD_LIBRARY_PATH=~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/:~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/ ~/.steam/steam/SteamApps/common/star\ conflict/StarConflict