Unable to get TinyMUX to run on Ubuntu 16.04
-
I'm hosting at Digital Ocean using Ubuntu LAMP on 16.04. Got the mediawiki up and running but now I can't get TinyMUX to run. When I run make depend I get a number of errors similar to this:
game.cpp: In function âvoid do_shutdown(dbref, dbref, dbref, int, int, UTF8*, const UTF8**, int)â:
game.cpp:1273:83: warning: ignoring return value of âssize_t write(int, const void*, size_t)â, declared with attribute warn_unused_result [-Wunused-result]
mux_write(fd, message, static_cast<unsigned int>(strlen((char )message)));
^
game.cpp:1274:50: warning: ignoring return value of âssize_t write(int, const void, size_t)â, declared with attribute warn_unused_result [-Wunused-result]
mux_write(fd, ENDLINE, sizeof(ENDLINE)-1);I've spent all morning trying to figure it out. I'm sure it's something simple but I'm not getting it. Any help would be great. Thanks.
-
@ZombieGenesis
Those are warnings, not errors. Put the whole output. -
( if [ -f libmux.so ]; then mv -f libmux.so libmux.so~ ; fi )
g++ -g -O -shared -fPIC -o libmux.so libmux.cpp -lm -lcrypt -ldl
g++ -g -O -c _build.cpp
g++ -g -O -c alarm.cpp
g++ -g -O -c alloc.cpp
g++ -g -O -c attrcache.cpp
g++ -g -O -c boolexp.cpp
g++ -g -O -c bsd.cpp
g++ -g -O -c command.cpp
g++ -g -O -c comsys.cpp
g++ -g -O -c conf.cpp
g++ -g -O -c cque.cpp
g++ -g -O -c create.cpp
g++ -g -O -c db.cpp
db.cpp: In function âvoid load_restart_db()â:
db.cpp:3686:21: warning: ignoring return value of âchar* fgets(char*, int, FILE*)â, declared with attribute warn_unused_result [-Wunused-result]
fgets(buf, 3, f);
^
g++ -g -O -c db_rw.cpp
g++ -g -O -c eval.cpp
g++ -g -O -c file_c.cpp
g++ -g -O -c flags.cpp
g++ -g -O -c funceval.cpp
g++ -g -O -c funceval2.cpp
g++ -g -O -c functions.cpp
g++ -g -O -c funmath.cpp
g++ -g -O -c game.cpp
game.cpp: In function âvoid do_shutdown(dbref, dbref, dbref, int, int, UTF8*, const UTF8**, int)â:
game.cpp:1273:83: warning: ignoring return value of âssize_t write(int, const void*, size_t)â, declared with attribute warn_unused_result [-Wunused-result]
mux_write(fd, message, static_cast<unsigned int>(strlen((char )message)));
^
game.cpp:1274:50: warning: ignoring return value of âssize_t write(int, const void, size_t)â, declared with attribute warn_unused_result [-Wunused-result]
mux_write(fd, ENDLINE, sizeof(ENDLINE)-1);
^
g++ -g -O -c help.cpp
g++ -g -O -c htab.cpp
g++ -g -O -c local.cpp
g++ -g -O -c log.cpp
g++ -g -O -c look.cpp
g++ -g -O -c mail.cpp
g++ -g -O -c match.cpp
g++ -g -O -c mathutil.cpp
g++ -g -O -c mguests.cpp
g++ -g -O -c modules.cpp
g++ -g -O -c move.cpp
g++ -g -O -c muxcli.cpp
g++ -g -O -c netcommon.cpp
g++ -g -O -c object.cpp
g++ -g -O -c predicates.cpp
predicates.cpp: In function âvoid do_backup(dbref, dbref, dbref, int, int)â:
predicates.cpp:1692:56: warning: ignoring return value of âint system(const char*)â, declared with attribute warn_unused_result [-Wunused-result]
system((char )tprintf(T("./_backupflat.sh 1>&2")));
^
g++ -g -O -c player.cpp
g++ -g -O -c player_c.cpp
g++ -g -O -c plusemail.cpp
g++ -g -O -c powers.cpp
g++ -g -O -c quota.cpp
g++ -g -O -c rob.cpp
g++ -g -O -c pcre.cpp
g++ -g -O -c set.cpp
g++ -g -O -c sha1.cpp
g++ -g -O -c speech.cpp
g++ -g -O -c stringutil.cpp
g++ -g -O -c strtod.cpp
g++ -g -O -c svdrand.cpp
g++ -g -O -c svdhash.cpp
svdhash.cpp: In member function âvoid CHashFile::WriteDirectory()â:
svdhash.cpp:1394:64: warning: ignoring return value of âssize_t pwrite(int, const void, size_t, __off_t)â, declared with attribute warn_unused_result [-Wunused-result]
pwrite(m_hDirFile, m_pDir, sizeof(HF_FILEOFFSET)m_nDir, 0);
^
svdhash.cpp: In member function âbool CHashFile::ReadDirectory()â:
svdhash.cpp:1640:63: warning: ignoring return value of âssize_t pread(int, void, size_t, __off_t)â, declared with attribute warn_unused_result [-Wunused-result]
pread(m_hDirFile, m_pDir, sizeof(HF_FILEOFFSET)m_nDir, 0);
^
svdhash.cpp: In member function âbool CHashFile::Insert(HP_HEAPLENGTH, UINT32, void)â:
svdhash.cpp:2070:68: warning: ignoring return value of âssize_t pwrite(int, const void*, size_t, __off_t)â, declared with attribute warn_unused_result [-Wunused-result]
pwrite(m_hDirFile, m_pDir, sizeof(HF_FILEOFFSET)*m_nDir, 0);
^
g++ -g -O -c timer.cpp
g++ -g -O -c timeabsolute.cpp
g++ -g -O -c timedelta.cpp
g++ -g -O -c timeparser.cpp
g++ -g -O -c timeutil.cpp
g++ -g -O -c timezone.cpp
g++ -g -O -c unparse.cpp
g++ -g -O -c utf8tables.cpp
g++ -g -O -c vattr.cpp
g++ -g -O -c walkdb.cpp
g++ -g -O -c wild.cpp
g++ -g -O -c wiz.cpp
g++ -g -O -DMUX_BUILD_DATE=""date
"" -DMUX_BUILD_NUM=""sh ./buildnum.sh
"" -c version.cpp
( if [ -f netmux ]; then mv -f netmux netmux~ ; fi )
g++ -g -O -o netmux _build.o alarm.o alloc.o attrcache.o boolexp.o bsd.o command.o comsys.o conf.o cque.o create.o db.o db_rw.o eval.o file_c.o flags.o funceval.o funceval2.o functions.o funmath.o game.o help.o htab.o local.o log.o look.o mail.o match.o mathutil.o mguests.o modules.o move.o muxcli.o netcommon.o object.o predicates.o player.o player_c.o plusemail.o powers.o quota.o rob.o pcre.o set.o sha1.o speech.o stringutil.o strtod.o svdrand.o svdhash.o timer.o timeabsolute.o timedelta.o timeparser.o timeutil.o timezone.o unparse.o utf8tables.o vattr.o walkdb.o wild.o wiz.o version.o -L. -lm -lcrypt -lmux
g++ -g -O -c slave.cpp
g++ -g -O -o slave slave.o -lm -lcrypt
cd ../game/bin ; rm -f dbconvert ; ln -s ../../src/netmux dbconvert
cd ../game/bin ; rm -f netmux ; ln -s ../../src/netmux netmux
cd ../game/bin ; rm -f slave ; ln -s ../../src/slave slave
( if [ ! -z "" -a -f "" ]; then cd ../game/bin ; rm -f ; ln -s ../../src/ ; fi )
( if [ ! -z "libmux.so" -a -f "libmux.so" ]; then cd ../game/bin ; rm -f libmux.so; ln -s ../../src/libmux.so libmux.so ; fi )Here it is. Thanks.
-
I don't see any errors there, it looks like it ran to completion with just a few warnings. cd to the "game" directory and run ./Startmux -- what happens?
-
It seems to be running but when I try to connect to the game itself the connection times out.
-
@ZombieGenesis Did you set the port? Are you connecting on the correct port? Is that port exposed to allow connections? (Note: I have no idea how that last part may or may not work, just know that if you have the port closed entirely, you won't be able to use it!)
-
As far as I know I am, yup. I even changed the port just in case. I've never had a problem like this with digital ocean before. Very weird.
-
Try to connect to the game from the server it's running on (e.g., "telnet 127.0.0.1 <port>"), rather than from elsewhere. If you haven't done so already.
Also, check the TinyMUX log files and look for errors.
-
Yup, I can connect locally. And the only error in the log has to do with not being able to find the comsys db. Right now I'm just using the stock blank DB that came with TinyMUX. Hmmm.
-
Is the port listening?
Try netstat -tulpn | grep $port or such. If it is then something else is the issue, but if you can't connect even from localhost I doubt it's a hosting matter.
-
I got it. For some reason apache was blocking the port. I opened it and it seems to be working fine now. Thanks for the help!