It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Here's what I did to make mine work:

1. Save this archive to the same directory as where the game was installed (the directory should also contain a file "start.sh").
2. Extract the contents of the archive (i.e., by running `tar xf ./libssl_1.0.0_64-bit.tar.gz` in a terminal). "libcrypto.so.1.0.0" and "libssl.so.1.0.0" should be in the same directory as "start.sh". If not, move them there.
3. In a terminal, `cd` to the game directory, then run `LD_LIBRARY_PATH="$(pwd):${LD_LIBRARY_PATH}" ./start.sh`.
Post edited November 05, 2021 by nothingnesses
avatar
nothingnesses: run `LD_LIBRARY_PATH=$(readlink -f ./) ./start.sh`.
Isn't that just a long-winded way of writing LD_LIBRARY_PATH="$PWD" ./start.sh?
avatar
nothingnesses: run `LD_LIBRARY_PATH=$(readlink -f ./) ./start.sh`.
avatar
advowson: Isn't that just a long-winded way of writing LD_LIBRARY_PATH="$PWD" ./start.sh?
Right, I forgot that that variable exists. Tbf, it's generally good practice to avoid using global environment vars when possible since these can be modified by external programs/functions. Using $PWD should be ok though, as long as we assume that it always point to the current directory.

Edit: come to think of it, you can probably just replace that line with `LD_LIBRARY_PATH=$(pwd) ./start.sh` which should work just as well.
Post edited November 02, 2021 by nothingnesses
As I read the documentation, you can trust $PWD, because it is automatically maintained by the shell. It's possible for a user to assign it a misleading value, but that would be weird, and would be automatically undone on next cd.
avatar
nothingnesses: run `LD_LIBRARY_PATH=$(readlink -f ./) ./start.sh`.
avatar
advowson: Isn't that just a long-winded way of writing LD_LIBRARY_PATH="$PWD" ./start.sh?
which in turn is the long-winded way of saying LD_LIBRARY_PATH=.
From GOG:

"Please download the older shared library from https://downloads.dotslashplay.it/resources/libssl/
and to put it in the game dir.
Simply put into the folder “/usr/lib/x86_64-linux-gnu” the files contained in “ libssl_1.0.0_64-bit.tar.gz ” which would be libcrypto.so.1.0.0 and libssl.so.1.0.0"

Later, they wrote:

"Apologies for the misunderstanding. Please could you first simply put these files into that game's installation folder. you could indeed use your file manager for this."

I had already put the libraries into the /usr/lib/x86_64-linux-gnu directory as root user by then.

The 'LD_LIBRARY_PATH' had been suggested to me but I didn't know where type this: in the terminal, or .sh file, or perhaps some place I wasn't aware of. Nothingnesses is the first person to give me explicit instructions. Advowson's addendum was nice. Thank you for that. I tried various searches for a solution like this but didn't know how to phrase the question for the search engine.

Many people can't remember what its like to be ignorant of something and chide you for trying to learn. And they don't answer questions, anyway, like OSM. Why did he quote my question about book recommendations, tell me I should read quality material, and then not suggest any quality material, nor how to determine a material's quality? Finger-pointers who say what is wrong but not also what is right are common, though. I expected a response like this.

vv221, thanks for your help. Though I won't use your method I learned more about linux and its architecture.

I just bought an external hdd. I think what I'll do is install my Windows 10 copy there and boot it when I want to play Black Isle games. I've run into parsing errors with mods, and it seems the solution is creating a case insensitive partition. To be honest, this error is why I explored playing the Linux version in the first place. But the mods won't install either through native Linux or through Wine. The simplest thing to do now is have an external Windows install. I can use this for HDR video, which Linux can't do yet, anyway.
avatar
advowson: Isn't that just a long-winded way of writing LD_LIBRARY_PATH="$PWD" ./start.sh?
avatar
osm: which in turn is the long-winded way of saying LD_LIBRARY_PATH=.
Your version assumes the called program will not use cd before executing anything else. Suppose that ./start.sh reads:

( cd bin/games && ./Baldur )

The loader will attempt to resolve the LD_LIBRARY_PATH of . relative to bin/games, not relative to where you were when you ran the wrapper script. By setting LD_LIBRARY_PATH to an absolute path, whether through readlink -f ., pwd, or $PWD, its meaning will remain constant regardless of subsequent calls to change the current working directory.
avatar
tdeo: From GOG:
Thank you for sharing their response. Having read it, I understand now why you put the libraries in the global scope initially, and I am pleased to see that GOG did later correct that advice.

Now we just need them to change the installer so it does the right thing by default, so that people do not need to take special custom steps just to get the game working.
avatar
tdeo: I tried various searches for a solution like this but didn't know how to phrase the question for the search engine.
linux load library local directory turns up some hits that seem plausible, including one that specifically describes using LD_LIBRARY_PATH. More generally, that type of question ("How do I let a program find a library in its directory?") seems like one that your distribution's support forum ought to be able to answer.

avatar
tdeo: vv221, thanks for your help. Though I won't use your method I learned more about linux and its architecture.
In my opinion, this is a part of the architecture that you should not need to learn about for the sake of running pre-packaged software. The software ought to work out of the box, or failing that, include clear and readily discoverable instructions on how to make it work. That you had to try multiple Internet searches, then come here, then contact customer support, seems to me like a failing of the packaging process. In my opinion, you should have been provided, as part of the initial install, everything you needed to get it working without further use of the Internet. Clearly, what you were actually given was not sufficient for that.

avatar
tdeo: The simplest thing to do now is have an external Windows install. I can use this for HDR video, which Linux can't do yet, anyway.
I don't know if it will work, or if you will want to use it if it did work, but you might be able to use native Windows to install the mod, then transplant that game data directory to Linux and run it under Wine. If you are the type of person who only boots into Windows for a small number of tasks and otherwise stays in Linux, this might be useful to you.
avatar
osm: which in turn is the long-winded way of saying LD_LIBRARY_PATH=.
avatar
advowson: Your version assumes
that no-one's (who knows his stuff that is) gonna even use gog's start.sh cos it's bang useless.
Post edited November 03, 2021 by osm