Startup Issue with Rust Dedicated Server - Oxide not able to compile plugins

System Information

Field Value
Operating System Linux - Debian GNU/Linux 12 on x86_64
Product AMP ‘Decadeus’ v2.4.6.0 (Mainline)
Virtualization QEMU_KVM
Application Rust Dedicated Server
Module RustModule
Running in Container No
Current State Ready

Problem Description

Issue

It seems U-Mod/Oxide isn’t able to compile plugins properly. Here are the logs I’m seeing in the Oxide folder:

21:27 [Error] Exception while starting compiler version :  (Exception: Magic number is wrong: 542)
  at System.TermInfoReader.ReadHeader (System.Byte[] buffer, System.Int32& position) [0x00028] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.TermInfoReader..ctor (System.String term, System.String filename) [0x0005f] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.TermInfoDriver..ctor (System.String term) [0x00055] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.ConsoleDriver.CreateTermInfoDriver (System.String term) [0x00000] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.ConsoleDriver..cctor () [0x0004d] in <fb001e01371b4adca20013e0ac763896>:0 
21:27 [Warning] Compiler may not be set as executable; chmod +x or 0744/0755 required
21:27 [Error] BaseException:  (Exception: Magic number is wrong: 542)
  at System.TermInfoReader.ReadHeader (System.Byte[] buffer, System.Int32& position) [0x00028] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.TermInfoReader..ctor (System.String term, System.String filename) [0x0005f] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.TermInfoDriver..ctor (System.String term) [0x00055] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.ConsoleDriver.CreateTermInfoDriver (System.String term) [0x00000] in <fb001e01371b4adca20013e0ac763896>:0 
  at System.ConsoleDriver..cctor () [0x0004d] in <fb001e01371b4adca20013e0ac763896>:0 
21:27 [Error] Error while compiling: compiler version  couldn't be started

I’ve looked up the error, and people have mentioned fixing xterm (c# - Mono Bug : Magic number is wrong: 542 - Stack Overflow)

I’ve done all of the above, and even went as far as using xhost to give the amp local user access to the display, which allowed me to run xterm in there manually. The issue still persists when starting the server.

Reproduction Steps

  • Created new Rust server from scratch
  • Enabled Oxide (U-Mod) from Configuration
  • Added simple Oxide/U-Mod plugin (Welcomer)

Did you try to chmod +x the compiler as suggested by the log warning?

Yes, I did! Sorry, I forgot to add it to the original post. The error persists even after chmod +x the compiler.

Update: We’ve talked with the Oxide devs and it seems it’s an issue related to Debian 12 defaulting to a different terminal or something along those lines. There may be something that can be done in AMP to help Oxide (I think the devs mentioned reaching out to the AMP team), but in the meantime running in a Docker container (using the latest cubecoders/ampbase image) fixes it, since it’s running Debian 11.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.