icculus / Serious-Engine

An open source version of a game engine developed by Croteam for the classic Serious Sam games.
GNU General Public License v2.0
164 stars 21 forks source link

Update README.md to include Linux #61

Closed yamgent closed 8 years ago

yamgent commented 8 years ago

A guide to help people who are interested in compiling the game on Linux.

comicfans commented 8 years ago

suggest add following comments in linux copy file section:

since application detect the 'realpath' for executable, soft link (ln -s ) main executable will not work.

icculus commented 8 years ago

@comicfans, we should probably fix that in the code (I assume the realpath() is there to help find the base directory of the game and we don't really care where the binary is, right?).

comicfans commented 8 years ago

UnixFileSystem.cpp:80 use SDL_GetBasePath() to detect executable path, and SDL uses readline (/proc/pid/exe) to get executable path(for linux) . this ignore soft link.

under linux argv[0] may help but not always .

clort81 commented 3 years ago

Hi, thanks for the work. I'd like to make some suggestions to make it work better under linux.

1) Player.ecl exists nowhere on the filesystem. When the executeable does not find a required data file such as 1_00.gro, it would be helpful to report the name and path of the not-found data file to stderr. .. Instead of the filename sought in the .gro archive.

2) It would be helpful to store and read the game-data-path to/from a configuration file. Games under linux commonly store game paths to a configuration file. This would be conventionally located in ~/.config/serious-engine or similar. For portability, no spaces are allowed in *nix directory or file names. Best to use alphanumeric ascii.

3) The build for ssam-tfe fails to build EntitiesMP, but the binary ssam-tfe requires EntitiesMP. It would be helpful to fix the cmake config to build all required libraries for ssam-tfe. I was able to work-around this by building ssam first.

Cheers