Aller au contenu
Rechercher dans
  • Plus d’options…
Rechercher les résultats qui contiennent…
Rechercher les résultats dans…

Important: FiveM Linux server builds at risk

Messages recommandés


@nihonium wrote:

We regret to have to announce that the FiveM/FXServer Linux server builds are considered an endangered species. This is due to the following reasons:

  • Alpine dropped libc++ packages and didn’t update clang packages for quite some time. This broke our build as they no longer provide libc++ at all.
  • gcc is unsuitable for compiling FiveM codebase due to bugs with advanced C++ features, and insufficient error reporting to write code around it. This code compiles fine with both clang and cl, meanwhile even GCC 8.2.0 does not work.
  • libstdc++ was long-unsuitable for building FiveM, now does work at compile-time but there’s runtime errors due to TLS models, dlopen with RTLD_LOCAL and Mono, so any libstdc++ build of FiveM would be unable to have Mono work. libc++ does handle this properly.
  • Other distributions (non-Alpine) are not suited for distribution as a minimal root filesystem + ‘portable’ binary (not dependent on any system files/libraries), since they either use glibc (which depends on a hardcoded prefix), are too large, or similarly don’t ship dependencies we require (mono, v8, libc++/clang, libcurl working with OpenSSL/mbedTLS since nodejs does not build with libressl and musl does not support symbol versioning).
  • In addition, breakpad does not build with musl (only supports glibc and bionic), so we can’t do any server crash reporting, so Linux builds are useless for helping reporting any server issues. Also, performance profilers are markedly inferior to ETW on Windows, and gdb breaks with our musl setup and shows ‘no shared libraries loaded’ when clearly having shared libraries loaded. This has made Linux a horrible experience for server owners experiencing any uncommon issues, as we literally can’t get any data off of their issue reports.

If anyone here happens to have sufficient experience with dealing with portable Linux toolchains, can perhaps nudge the Alpine maintainers to mainline libc++ again (or update LLVM to 7.0, see a recent pull request by an Alpine community member), or otherwise knows how to fix this, help would be very appreciated.

It is recommended to move servers to Windows to maintain service continuity, and have the ability to upload dumps and other diagnostics due to the superior runtime instrumentation tooling existing on the Windows platform.

For now, we are investigating our options when it comes to reviving the Linux builds.

Posts: 47

Participants: 26

Read full topic

Afficher l’article complet

Partager ce message

Lien à poster
Partager sur d’autres sites
Ce sujet ne peut plus recevoir de nouvelles réponses.

  • Créer...

Information importante

En utilisant ce site, vous acceptez les présents règlements Conditions d’utilisation, Politique de confidentialité,Règles.