Hey everyone, I was curious if anyone has gotten the Static Chaos/Chaosium code by Alathon to work and/or what they did to get it working. I put it on my MU* host this morning and for the life of me can't get it to make at all! I know a bit about coding and any work I did with muds was always just screwing around on a Win port of Rom or something. There isn't any documentation really in the release and I am new to using the shells for this. Essentially what I did was read the makefile to make sure it was the right one, then I uploaded the whole thing thing to my host. Then I cd to the source folder where all the code and the makefile was and ran a make. I dont know whats up with this one at all and any help would be appreciated. I just wanted to get it up for myself and some friends and possibly reopen it to the public. I will post below the makefile and what make returned to me.
make gcc -c -O -Wall -g act_comm.c act_comm.c: In function ‘do_suicide’: act_comm.c:1791: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result act_comm.c:1793: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result gcc -c -O -Wall -g act_info.c act_info.c: In function ‘do_finger’: act_info.c:2820: warning: ‘kills[3]’ may be used uninitialized in this function act_info.c:2820: warning: ‘kills[2]’ may be used uninitialized in this function gcc -c -O -Wall -g act_move.c act_move.c: In function ‘do_humiliate’: act_move.c:2282: warning: comparison with string literal results in unspecified behavior act_move.c: In function ‘do_train’: act_move.c:995: warning: ‘scost[1]’ may be used uninitialized in this function act_move.c:995: warning: ‘scost[2]’ may be used uninitialized in this function act_move.c:995: warning: ‘scost[3]’ may be used uninitialized in this function gcc -c -O -Wall -g act_obj.c gcc -c -O -Wall -g act_wiz.c act_wiz.c: In function ‘copyover’: act_wiz.c:3640: warning: reading through null pointer (argument 8) gcc -c -O -Wall -g bit.c gcc -c -O -Wall -g board.c gcc -c -O -Wall -g clan.c gcc -c -O -Wall -g comm.c comm.c: In function ‘new_descriptor’: comm.c:882: warning: pointer targets in passing argument 3 of ‘getsockname’ differ in signedness comm.c:883: warning: pointer targets in passing argument 3 of ‘accept’ differ in signedness comm.c:925: warning: pointer targets in passing argument 3 of ‘getpeername’ differ in signedness comm.c: In function ‘bust_a_prompt’: comm.c:1722: warning: format not a string literal and no format arguments comm.c:1985:10: warning: missing terminating " character comm.c: In function ‘nanny’: comm.c:1985: error: missing terminating " character comm.c:1986: error: ‘characters’ undeclared (first use in this function) comm.c:1986: error: (Each undeclared identifier is reported only once comm.c:1986: error: for each function it appears in.) comm.c:1986: error: expected ‘)’ before ‘create’ comm.c:1986: error: stray ‘\’ in program comm.c:1986: error: stray ‘\’ in program comm.c:1986: error: stray ‘@’ in program comm.c:1987: error: stray ‘\’ in program comm.c:1987: error: stray ‘\’ in program comm.c:1987: error: stray ‘\’ in program comm.c:1987: error: stray ‘\’ in program comm.c:1987:44: warning: missing terminating " character comm.c:1987: error: missing terminating " character comm.c:1990: error: too few arguments to function ‘write_to_buffer’ comm.c:1990: error: expected ‘;’ before ‘}’ token comm.c:2253: warning: format not a string literal and no format arguments make: *** [comm.o] Error 1
I was able to remove the comm.c:1985 error by condensing a statement to one line instead of being split up. Essentially it was:
write_to_buffer( d, "Due to the large number of fuckheads using your ISP,\n\rusers may not create new characters. To create a new character,\n\r email Alathon at chaosium@voyager.inetsolve.com with the desired\n\rusername and class.\n\r", 0 );
So now the make reads out:
make gcc -c -O -Wall -g comm.c comm.c: In function ‘new_descriptor’: comm.c:882: warning: pointer targets in passing argument 3 of ‘getsockname’ differ in signedness comm.c:883: warning: pointer targets in passing argument 3 of ‘accept’ differ in signedness comm.c:925: warning: pointer targets in passing argument 3 of ‘getpeername’ differ in signedness comm.c: In function ‘bust_a_prompt’: comm.c:1722: warning: format not a string literal and no format arguments comm.c: In function ‘nanny’: comm.c:2250: warning: format not a string literal and no format arguments gcc -c -O -Wall -g const.c gcc -c -O -Wall -g db.c db.c: In function ‘copyover_recover’: db.c:3476: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result gcc -c -O -Wall -g fight.c gcc -c -O -Wall -g fist.c gcc -c -O -Wall -g handler.c gcc -c -O -Wall -g interp.c interp.c:1672:50: warning: trigraph ??' ignored, use -trigraphs to enable interp.c:1673:50: warning: trigraph ??' ignored, use -trigraphs to enable interp.c:1674:55: warning: trigraph ??' ignored, use -trigraphs to enable interp.c:1675:56: warning: trigraph ??' ignored, use -trigraphs to enable interp.c:1676:56: warning: trigraph ??' ignored, use -trigraphs to enable gcc -c -O -Wall -g mazoku.c gcc -c -O -Wall -g magic.c gcc -c -O -Wall -g mem.c gcc -c -O -Wall -g mob_commands.c gcc -c -O -Wall -g mob_prog.c mob_prog.c: In function ‘mprog_do_ifchck’: mob_prog.c:354: warning: overflow in implicit constant conversion mob_prog.c:356: warning: overflow in implicit constant conversion mob_prog.c:359: warning: overflow in implicit constant conversion mob_prog.c:362: warning: overflow in implicit constant conversion mob_prog.c: In function ‘mprog_process_if’: mob_prog.c:936: warning: function returns address of local variable mob_prog.c:948: warning: function returns address of local variable mob_prog.c:957: warning: function returns address of local variable mob_prog.c:973: warning: function returns address of local variable mob_prog.c:980: warning: function returns address of local variable mob_prog.c:995: warning: function returns address of local variable mob_prog.c:1009: warning: function returns address of local variable mob_prog.c:1025: warning: function returns address of local variable mob_prog.c:1040: warning: function returns address of local variable mob_prog.c:1053: warning: function returns address of local variable mob_prog.c:1063: warning: function returns address of local variable mob_prog.c:1066: warning: function returns address of local variable mob_prog.c:1078: warning: function returns address of local variable gcc -c -O -Wall -g olc.c gcc -c -O -Wall -g olc_act.c gcc -c -O -Wall -g olc_save.c gcc -c -O -Wall -g patryn.c gcc -c -O -Wall -g quest.c gcc -c -O -Wall -g saiyan.c gcc -c -O -Wall -g save.c save.c: In function ‘save_char_obj’: save.c:122: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result save.c: In function ‘write_finger’: save.c:161: warning: format not a string literal and no format arguments save.c: In function ‘fwrite_finger’: save.c:197: warning: format not a string literal and no format arguments save.c:203: warning: format not a string literal and no format arguments save.c: In function ‘load_char_obj’: save.c:651: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result gcc -c -O -Wall -g special.c gcc -c -O -Wall -g soldier.c gcc -c -O -Wall -g sorcerer.c gcc -c -O -Wall -g string.c In function ‘strncat’, inlined from ‘string_add’ at string.c:184: /usr/include/bits/string3.h:153: warning: call to __builtin___strncat_chk might overflow destination buffer gcc -c -O -Wall -g suit.c gcc -c -O -Wall -g update.c update.c: In function ‘save_wholist’: update.c:1685: warning: format not a string literal and no format arguments update.c: In function ‘save_llboards’: update.c:1727: warning: format not a string literal and no format arguments update.c:1749: warning: format not a string literal and no format arguments update.c: In function ‘save_clanboard’: update.c:1791: warning: format not a string literal and no format arguments rm -f chaosium gcc -O -g -o chaosium act_comm.o act_info.o act_move.o act_obj.o act_wiz.o bit.o board.o clan.o comm.o const.o db.o fight.o fist.o handler.o interp.o mazoku.o magic.o mem.o mob_commands.o mob_prog.o olc.o olc_act.o olc_save.o patryn.o quest.o saiyan.o save.o special.o soldier.o sorcerer.o string.o suit.o update.o fist.o: In function `do_master': /home/jarl/SC/src/fist.c:820: undefined reference to `pow' /home/jarl/SC/src/fist.c:821: undefined reference to `pow' /home/jarl/SC/src/fist.c:822: undefined reference to `pow' /home/jarl/SC/src/fist.c:823: undefined reference to `pow' /home/jarl/SC/src/fist.c:824: undefined reference to `pow' fist.o:/home/jarl/SC/src/fist.c:825: more undefined references to `pow' follow collect2: ld returned 1 exit status make: *** [chaosium] Error 1
Any insight into this would be appreciated. Thank you.
14 Aug, 2009, David Haley wrote in the 2nd comment:
Votes: 0
/home/jarl/SC/src/fist.c:822: undefined reference to `pow'
Add -lm to your linker flags.
The rest are fairly routine cleanups; most of them are due to poor or otherwise sloppy programming practices. You can probably get away with ignoring them, though, although it would be better to fix them one way or another.
this morning and for the life of me can't get it to make at all! I know a bit about coding and any work I did with muds was always just screwing around on a Win port of
Rom or something. There isn't any documentation really in the release and I am new to using the shells for this. Essentially what I did was read the makefile to make sure
it was the right one, then I uploaded the whole thing thing to my host. Then I cd to the source folder where all the code and the makefile was and ran a make. I dont know
whats up with this one at all and any help would be appreciated. I just wanted to get it up for myself and some friends and possibly reopen it to the public. I will post below
the makefile and what make returned to me.
Makefile
—————————————————————-
I was able to remove the comm.c:1985 error by condensing a statement to one line instead of being split up. Essentially it was:
So now the make reads out:
Any insight into this would be appreciated. Thank you.