Hi Soldat players!
bash: no such file or directory: ./soldatserver
If you were trying to install soldat server on unix machine running 64-bit system and getting problems like no message after running ./soldatserver
… there is a solution for you!
Running strace ./soldatserver we can see some debug…
dev@local:~/soldat_server$ strace ./soldatserver
execve("./soldatserver", ["./soldatserver"], [/* 16 vars */]) = 0
[ Process PID=3776 runs in 32 bit mode. ]
getpid() = 3776
open("/proc/3776/exe", O_RDONLY) = 3
lseek(3, 1488, SEEK_SET) = 1488
read(3, "1\0\0\0\254\334\17\0\0\0\10\0", 12) = 12
gettimeofday({1408051645, 60678}, NULL) = 0
unlink("/tmp/upxBXWKGPIADWA") = -1 ENOENT (No such file or directory)
open("/tmp/upxBXWKGPIADWA", O_WRONLY|O_CREAT|O_EXCL, 0700) = 4
ftruncate(4, 1039532) = 0
old_mmap(NULL, 528384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff770a000
read(3, "\0\0\10\0\"\213\3\0", 8) = 8
read(3, "\177?d\371\177ELF\1\0\2\0\3\0\32h?\5\10\373\377e\2674\16d\331\17/\27 \0"..., 232226) = 232226
write(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\2\0\3\0\1\0\0\0h?\5\0104\0\0\0"..., 524288) = 524288
read(3, "\254\334\7\0\355+\3\0", 8) = 8
read(3, "\377\277\333\313\350\0\306\203\354\n\0\213\203\30\205\300t\7\213\323\350\f\230\372\377\377\377\367\373^[\303"..., 207853) = 207853
write(4, "\350\0\0\0\306\203\354\0\0\0\0\213\203\350\0\0\0\205\300t\7\213\323\350\f\230\372\377^[\303\370"..., 515244) = 515244
read(3, "\0\0\0\0UPX!", 8) = 8
munmap(0xf770a000, 528384) = 0
close(4) = 0
close(3) = 0
open("/tmp/upxBXWKGPIADWA", O_RDONLY) = 3
access("/proc/3776/fd/3", R_OK|X_OK) = 0
unlink("/tmp/upxBXWKGPIADWA") = 0
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
execve("/proc/3776/fd/3", ["./soldatserver"], [/* 28 vars */]) = -1 ENOENT (No such file or directory)
close(3) = 0
fork() = 3777
waitpid(-1, NULL, 0) = 3777
--- SIGCHLD (Child exited) @ 0 (0) ---
execve("/tmp/upxBXWKGPIADWA", ["./soldatserver"], [/* 28 vars */]) = -1 ENOENT (No such file or directory)
unlink("/tmp/upxBXWKGPIADWA") = -1 ENOENT (No such file or directory)
_exit(127) = ?
As you can see, the error message is: -1 ENOENT (No such file or directory).
After a few minutes of research… I found that missing library causing this problem is… libc6-i386. To install on debian/ubuntu just type sudo apt-get install libc6-i386.
Then I found another problem.
dev@local:~/soldat_server$ ./soldatserver
-= Soldat Dedicated Server 1.5.0 – 2.6.4 =-
—————————————————————-
Caution! This software is still in BETA phase.
Soldat Dedicated Server initializing…
—————————————————————-
Need help running your server?
IRC: #soldat.devs @ irc.quakenet.org
—> http://enesce.com/
Additional parameters:
./soldatserver -p PORT -l MAXPLAYERS -p PASSWORD
Example: ./soldatserver -p 23073 -l 16 -p “my pass”
Hit CTRL+C to exit
Please command the server using the Soldat Admin program
Welcome to Soldat 1.5.0
No maps list found (adding default). Please add maps in mapslist.txt
Server name: Soldat dedicated server
Error writing Gamestats
Server PID: 8584Error writing PID file
----------------------------------------------------------------
Soldat Arena One - version 2.1
Server IP: 127.0.0.1 Port: 23073
ASE Port: 23196
Connection for file server started. Port: 23083
Registering server @ ASE Master Server
Error writing Gamestats
BattlEye anti-cheat enabled
>>> LobbyServer NSList
>>> LobbyServer Round-Robin DNS Resolve
DNS Svr: 8.8.8.8 (Custom Set)
>>> LobbyNotifyNewServer
Registering server @ 67.23.118.179
libgcc_s.so.1 must be installed for pthread_cancel to work
Aborted
libgcc_s.so.1 problem was solved by installing sudo apt-get install lib32gcc1 this package. Now everything works perfectly!