Compiling error

Posted by Genlath on Thu 18 Sep 2014 04:12 PM — 3 posts, 19,812 views.

Brazil #0
Good afternoon. Smaug1.4a_mxp.tar downloaded the forum here, I renamed the makefile because I use cygwin. I installed cygwin as the tutorial available here in the forum and ran the commands: make clean and then make. But had this error. How can I fix it?

"$ make
make smaug
make[1]: Entering directory '/cygdrive/c/smaug1.4/src'
gcc -c -O -g3 -Wall -Wuninitialized -DSMAUG act_comm.c
act_comm.c: In function 'translate':
act_comm.c:180:6: warning: array subscript has type 'char' [-Wchar-subscripts]
if (isalpha(*pbuf) && (!percent || (rand() % 100) > percent) )
^
act_comm.c:183:3: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( isupper(*pbuf) )
^
act_comm.c: In function 'drunk_speech':
act_comm.c:255:5: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( toupper(*arg) == 'T' )
^
act_comm.c:265:4: warning: array subscript has type 'char' [-Wchar-subscripts]
else if ( toupper(*arg) == 'X' )
^
act_comm.c:296:7: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( isupper(*txt) )
^
act_comm.c:297:9: warning: array subscript has type 'char' [-Wchar-subscripts]
*txt1 = tolower( *txt );
^
act_comm.c:299:7: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( islower(*txt) )
^
act_comm.c:300:9: warning: array subscript has type 'char' [-Wchar-subscripts]
*txt1 = toupper( *txt );
^
act_comm.c: In function 'do_repeat':
act_comm.c:1690:2: warning: array subscript has type 'char' [-Wchar-subscripts]
else if(isalpha(argument[0]) && argument[1] == '\0')
^
act_comm.c:1692:3: warning: array subscript has type 'char' [-Wchar-subscripts]
index = tolower(argument[0]) - 'a';
^
act_comm.c: In function 'do_emote':
act_comm.c:1751:5: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( isalpha(plast[-1]) )
^
act_comm.c: In function 'add_profane_word':
act_comm.c:3252:7: warning: array subscript has type 'char' [-Wchar-subscripts]
_word[j]=tolower(word); j++;
^
act_comm.c:3253:7: warning: array subscript has type 'char' [-Wchar-subscripts]
_word[j]=toupper(word); j++;
^
gcc -c -O -g3 -Wall -Wuninitialized -DSMAUG act_info.c
act_info.c: In function 'show_visible_affects_to_char':
act_info.c:482:5: warning: array subscript has type 'char' [-Wchar-subscripts]
name[0] = toupper(name[0]);
^
act_info.c: In function 'get_help':
act_info.c:1894:5: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( isdigit(argument[0]) )
^
act_info.c: In function 'do_hedit':
act_info.c:2032:9: warning: array subscript has type 'char' [-Wchar-subscripts]
if ( isdigit(argument[0]) )
^
act_info.c: In function 'do_hlist':
act_info.c:2177:2: warning: array subscript has type 'char' [-Wchar-subscripts]
if( !isdigit(arg[0]) )
^
act_info.c: In function 'do_password':
act_info.c:3457:5: warning: array subscript has type 'char' [-Wchar-subscripts]
while ( isspace(*argument) )
^
act_info.c:3476:5: warning: array subscript has type 'char' [-Wchar-subscripts]
while ( isspace(*argument) )
^
act_info.c: In function 'do_ignore':
act_info.c:4600:3: warning: array subscript has type 'char' [-Wchar-subscripts]
tolower(arg[0]), capitalize(arg));
^
gcc -c -O -g3 -Wall -Wuninitialized -DSMAUG act_move.c
act_move.c: In function 'grab_word':
act_move.c:168:5: warning: array subscript has type 'char' [-Wchar-subscripts]
while ( isspace(*argument) )
^
act_move.c:186:5: warning: array subscript has type 'char' [-Wchar-subscripts]
while ( isspace(*argument) )
^
act_move.c: In function 'rev_exit':
act_move.c:393:15: warning: trígrafo ??> ignorado, use -trigraphs para habilitá
lo [-Wtrigraphs]
return "<???>";
^
act_move.c: In function 'generate_exit':
act_move.c:604:25: error: lvalue required as left operand of assignment
(EXIT_DATA *) pexit = xit;
^
act_move.c: In function 'do_climb':
act_move.c:2206:10: warning: variable 'found' set but not used [-Wunused-but-se
-variable]
bool found;
^
act_move.c: In function 'do_enter':
act_move.c:2237:10: warning: variable 'found' set but not used [-Wunused-but-se
-variable]
bool found;
^
act_move.c: In function 'do_leave':
act_move.c:2276:10: warning: variable 'found' set but not used [-Wunused-but-se
-variable]
bool found;
^
Makefile:70: recipe for target 'act_move.o' failed
make[1]: *** [act_move.o] Error 1
make[1]: Leaving directory '/cygdrive/c/smaug1.4/src'
Makefile:60: recipe for target 'all' failed
make: *** [all] Error 2"

I thank the attention.
And taking another doubt, this version has the mobprogram the program command?
If you do not like to add to mobrpromgram this command?
Amended on Thu 18 Sep 2014 04:13 PM by Genlath
USA #1
For starters, why not use the smaugfuss package rather than smaug? FUSS is far cleaner code and already has most of the commonly requested features added to the smaug base. Second, since you're obviously a new coder, why not go with one of the newer, cleaner code packages that was designed for the tighter compiler requirements? As for your current problem, what's the error 1 return code mean for act_move.o?
USA Global Moderator #2
This has been asked and answered a dozen times already.

http://www.gammon.com.au/forum/?id=8996
http://www.gammon.com.au/forum/?id=9851
http://www.gammon.com.au/forum/?id=7122
http://www.gammon.com.au/forum/?id=11046
http://www.gammon.com.au/forum/?id=7838
http://www.gammon.com.au/forum/?id=7445
http://www.gammon.com.au/forum/?id=10173
http://www.gammon.com.au/forum/?id=11665
http://www.gammon.com.au/forum/?id=5984
...