Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
'gcc' is the GNU C compiler and 'ld' is the linker that creates a library (something similar to a DLL on Windows) from the compiled source.
Maybe they are not installed on your system. Would seem strange to me but I don't know the different distros and their default installations that well. (Some distros might not install the compiler/bind tools for a default desktop environment.)
I do have 'gcc' installed already. I'm not sure about 'ld' though. I can't find anything with that exact name in my repos. But, I do have something installed called 'Binutils' which is described as a 'GNU assembler, linker and binary utilities'.
Anyway, I tried again because I'd forgotten the error message from before. Everything goes fine until I input
The 'Workaround.c' file is definitely there with the correct text pasted into it the way it describes to do it so I'm not sure what's up here.
Any ideas for a fix?
Thanks for your help!
The compiler (or better preprocessor part in this case) is looking for a file 'dlfcn.h' and expects it in the include search path. But it's not there (or the compiler cannot find it) and this is what the compiler complains about.
Which means that either
- a package is still missing
- the required package is installed but it was split into a 'normal' and a 'devel' package and the include file is part of the 'devel' package which needs to be installed
- the include search path does not include the path where the file actually resides
A simple check if the file is present could be done by entering the following command
If this command has some output like '/usr/include/dlfcn/dlfcn.h', it means that the file exists on the system in the directory '/usr/include/dlfcn', but this directory seems not to be part of the compilers include search path.
There should be an additional parameter for gcc to tell it where it can find (additional) include files, it might be the 'I' parameter (capital i, not a small L), which you could add to the compiler command which then would be something like
(with the 'example directory' I assumed above, change that accordingly. I'm not sure if 'I' is really the correct parameter, to be sure, use 'gcc --help' or look at the man page or search the web.)
Looking at the page you posted and the names there, it could be that you skipped the part where required packages are installed:
By their names, I'd guess that they are two 'devel' packages. Make sure you installed them as described in the article.
I definitely installed both of the packages. I just tried again installing them in two separate commands this time and they were already present with nothing to install or upgrade.
So, something is still missing I guess :/ I'm not quite sure what to try next. Please let me know if you have any ideas. Thanks for the your help either way though!
I did some combination of things between what was mentioned there and what was mentioned in the page I first linked. Managed to load the game up and it appears to be working now :) Will play test it soon and see if it's ok.
The issue is apparently that the game doesn't officially support Mesa drivers so you have to mess around to get it to work. It would probably be pretty easy for them to patch it seeing as I managed to sort it out and I'm not a programmer or anything. I can't see them patching it by this point though.
Anyway, glad that's sorted! I'll report back if I get any more issues with it. Thanks.
Yeh after looking on their forum I saw that someone pointed it out as a bug in the game code. If I managed to follow the instructions and fix it then I'm pretty sure they could easily make a patch based on that fix. It is really stupid of them tbh because I almost refunded the game when it wouldn't boot. How many refunds and lost sales has/will this cause them I wonder... Strange isn't it..
sudo apt-get install build-essentials
Run the gcc command again and it'll work without fuss.
sudo apt-get install build-essential
I added an s that doesn't belong to the program.