View Issue Details

IDProjectCategoryView StatusLast Update
0003901Multi Theft Auto : San AndreasLinuxpublic2009-07-23 14:50
ReporterIJs Assigned Tofspijkerman  
Status resolvedResolutionfixed 
Target Version1.0Fixed in Version1.0 
Summary0003901: *nix compatibility for server

Because we primarily use Win32 for development of our client and server, we usually don't bother fixing the Linux compatibility until shortly before the release.

The server currently does not compile on Linux. Since some people have requested a Linux-compatible server, this report has been opened.

The server has to made to compile with GCC (which is more strict), and the Makefiles will have to updated, if not rewritten.

TagsNo tags attached.


has duplicate 0004450 closed New issues Linux Debian 5.0 Lenny - Compatiblity 
related to 0003095 closed Multi Theft Auto : San Andreas Make Linux server compatible with older machines / older Linux distributions 
related to 0004882 closed Multi Theft Auto : San Andreas Restructure server paths 



2009-03-11 23:55

manager   ~~0008521

Hurry up! xD


2009-03-25 14:40

reporter   ~~0008631

Seconded... It'd SUCK to not have a linux server... and the release grows closer all the time. Maybe having ONE person working on this is kind of a bad idea, it doesn't really look like the linux server will make it in time for the release.


2009-03-25 14:42

manager   ~~0008632

That person has been exclussively dedicated to this issue. I hope that he'll get it to work anytime soon.


2009-03-25 14:47

administrator   ~~0008633

As with everything, the branch is available for anyone to compile/use/work on.


2009-05-24 00:22

reporter   ~~0009357

It might be time for another polite nag. The release is closer than ever, and not having a linux server would still suck.


2009-06-03 00:16

administrator   ~~0009508

Reminder sent to: fspijkerman

Hurry up pal!


2009-06-26 23:06

administrator   ~~0009763

Last edited: 2009-06-26 23:09

Some remarks on the current state of our *nix builds:

  • All MTA-specific shared libraries that are generated and used by our server are, imo, misplaced. Current libraries are: libcore, libdeathmatch, libehs, libjson, libpme, libxml. These libraries (except for ehs, json and pme) are meant for sole use by our software and have way too ambigious names to be placed in /usr/lib. They should either be renamed or moved to /usr/lib/mta-server or /usr/libexec/mta-server (see discussion at ).

  • Two directories "include -I(srcdir)" and "pme" are generated in the installation path. This is likely a typo in the makefiles: pme is supposed to go in the "include" directory.

  • We may want to look into copying our SDK header files into /usr/include/mta.

  • I'm not sure where the actual content of the server is supposed to go.. e.g. resources (/usr/share/mta-server?), configuration files (/etc?) and dynamically loaded modules (/usr/lib/mta-server?).


2009-06-27 19:11

administrator   ~~0009774

libehs, libjson and libpme should be statically linked.


2009-06-27 19:29

updater   ~~0009777

It would be rather unlucky to put resources/configurations/dynamic modules anywhere globally, especially in regards of having multiple servers online (server-hosting) at the same time which should usually not share their configuration.

I'd suggest using the current working directory and its subdirectories (pretty much as mods/deathmatch is now) for server-specific files.

Issue History

Date Modified Username Field Change