Register forum user name Search FAQ

Gammon Forum

Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the password reset link.

Due to spam on this forum, all posts now need moderator approval.

 Entire forum ➜ SMAUG ➜ Running the server ➜ Cygwin Again :)

Cygwin Again :)

It is now over 60 days since the last post. This thread is closed.     Refresh page


Posted by Yakir   (17 posts)  Bio
Date Fri 17 Aug 2001 09:47 PM (UTC)
Message
I checked and I had aparently not downloaded a few of the files (including the library), so i downloaded all the rest of the files and compiled. The compile managed to compile most of the .o files and then I got an error and it stoped. I got an 'implicit decleration of re_exec' and several 'undefined reference to crypt' so I uncommented the correct lines in the Makefile, but I also got an 'undefined reference to RENAME' and I haven't the faintest clue what to do about it. Despite my 'valiant' tries, here is what it looks like when I try to 'make':



make $
make smaug
'make[1]: Entering directory `/home/smaug/dist/src
rm -f smaug
gcc    -lcrypt -lregex -DUSE_IMC -o smaug act_comm.o act_info.o act_move.o act_o
bj.o act_wiz.o boards.o build.o clans.o comm.o comments.o const.o db.o deity.o f
ight.o handler.o hashstr.o ibuild.o ident.o interp.o magic.o makeobjs.o mapout.o
misc.o mpxset.o mud_comm.o mud_prog.o player.o polymorph.o requests.o reset.o s
ave.o shops.o skills.o special.o tables.o track.o update.o grub.o stat_obj.o ban
o services.o planes.o imm_host.o imc.o imc-mail.o imc-interp.o imc-util.o imc-c.
onfig.o imc-events.o imc-version.o imc-mercbase.o ice.o icec.o icec-mercbase.o c
olorize.o
:'act_comm.o: In function `is_profane
'home/smaug/dist/src/act_comm.c:3347: undefined reference to `re_exec/
:'act_info.o: In function `do_hset
'home/smaug/dist/src/act_info.c:2041: undefined reference to `RENAME/
:'act_info.o: In function `do_password
'home/smaug/dist/src/act_info.c:3474: undefined reference to `crypt/
:'act_wiz.o: In function `do_balzhur
'home/smaug/dist/src/act_wiz.c:3258: undefined reference to `RENAME/
:'act_wiz.o: In function `do_mortalize
'home/smaug/dist/src/act_wiz.c:4880: undefined reference to `RENAME/
:'act_wiz.o: In function `do_form_password
'home/smaug/dist/src/act_wiz.c:5441: undefined reference to `crypt/
:'act_wiz.o: In function `do_destroy
'home/smaug/dist/src/act_wiz.c:5756: undefined reference to `RENAME/
'home/smaug/dist/src/act_wiz.c:5784: undefined reference to `RENAME/
:'act_wiz.o: In function `do_pcrename
'home/smaug/dist/src/act_wiz.c:9922: undefined reference to `RENAME/
'home/smaug/dist/src/act_wiz.c:9925: undefined reference to `RENAME/
:'build.o: In function `do_mset
'home/smaug/dist/src/build.c:1692: undefined reference to `crypt/
:'build.o: In function `fold_area
'home/smaug/dist/src/build.c:5889: undefined reference to `RENAME/
:'build.o: In function `do_installarea
'home/smaug/dist/src/build.c:6613: undefined reference to `RENAME/
:'comm.o: In function `nanny
'home/smaug/dist/src/comm.c:1663: undefined reference to `crypt/
'home/smaug/dist/src/comm.c:1750: undefined reference to `crypt/
'home/smaug/dist/src/comm.c:1771: undefined reference to `crypt/
:'save.o: In function `save_char_obj
'home/smaug/dist/src/save.c:191: undefined reference to `RENAME/
'home/smaug/dist/src/save.c:258: undefined reference to `RENAME/
collect2: ld returned 1 exit status
make[1]: *** [smaug] Error 1
'make[1]: Leaving directory `/home/smaug/dist/src
make: *** [all] Error 2



My Makefile is as follows:



CC      = gcc
#PROF    = -p
NOCRYPT =

# Uncomment the two lines below if compiling on a Solaris box
#SOLARIS_FLAG = -Dsun -DSYSV
#SOLARIS_LINK = -lnsl -lsocket

#Uncomment the line below if you are getting a line like:
#interp.c:757: warning: int format, time_t arg (arg 7)
TIME = -DTIMEFORMAT

#Uncomment the line below if you are getting implicit decleration of re_exec
REG = -DREGEX

#Uncomment the line below if you are getting undefined re_exec errors
NEED_REG = -lregex

#Uncomment the line below if you are getting undefined crypt errors
NEED_CRYPT = -lcrypt

#DBUGFLG = -DREQUESTS

#Uncomment the line below if you want a performance increase though beware
#your core files may not be as much of a benefit if you do.
#OPT_FLAG = -finline-functions -funroll-loops -fdefer-pop -fstrength-reduce

C_FLAGS = $(OPT_FLAG) -O -g3 -Wall -Wuninitialized $(PROF) $(NOCRYPT) $(DBUGFLG) -DSMAUG $(SOLARIS_FLAG) $(TIME) $(REG)
L_FLAGS = $(OPT_FLAG) $(PROF) $(SOLARIS_LINK) $(NEED_CRYPT) $(NEED_REG)

#Uncomment the next three comments below if you want to use IMC
USE_IMC    = -DUSE_IMC

IMC_OFILES = imc.o imc-mail.o imc-interp.o imc-util.o imc-config.o \
        imc-events.o imc-version.o imc-mercbase.o ice.o icec.o icec-mercbase.o

IMC_CFILES = imc.c imc-mail.c imc-interp.c imc-util.c imc-config.c \
        imc-events.c imc-version.c imc-mercbase.c ice.c icec.c icec-mercbase.c

O_FILES = act_comm.o act_info.o act_move.o act_obj.o act_wiz.o boards.o \
          build.o clans.o comm.o comments.o const.o db.o deity.o fight.o \
          handler.o hashstr.o ibuild.o ident.o interp.o magic.o makeobjs.o \
          mapout.o misc.o mpxset.o mud_comm.o mud_prog.o player.o polymorph.o \
          requests.o reset.o save.o shops.o skills.o special.o tables.o \
          track.o update.o grub.o stat_obj.o ban.o services.o planes.o \
          imm_host.o $(IMC_OFILES) colorize.o 

C_FILES = act_comm.c act_info.c act_move.c act_obj.c act_wiz.c boards.c \
          build.c clans.c comm.c comments.c const.c db.c deity.c fight.c \
          handler.c hashstr.c ibuild.c ident.c interp.c magic.c makeobjs.c \
          mapout.c misc.c mpxset.c mud_comm.c mud_prog.c player.c polymorph.c \
          requests.c reset.c save.c shops.c skills.c special.c tables.c \
          track.c update.c grub.c stat_obj.c ban.c services.c planes.c \
          imm_host.c $(IMC_CFILES) colorize.c 

H_FILES = mud.h bet.h imc-config.h imc-mercbase.h imc-mercdefs.h imc.h \
          ice.h icec.h icec-mercbase.h

all:
	make smaug

smaug: $(O_FILES)
	rm -f smaug
	$(CC) $(L_FLAGS) $(USE_IMC) -o smaug $(O_FILES)
	chmod g+w smaug.exe
	chmod a+x smaug.exe
	chmod g+w $(O_FILES)

.c.o: mud.h
	$(CC) -c $(C_FLAGS) $(USE_IMC) $<

clean:
	rm -f *.o smaug *~
Top

Posted by Nick Gammon   Australia  (23,165 posts)  Bio   Forum Administrator
Date Reply #1 on Fri 17 Aug 2001 10:30 PM (UTC)
Message
I don't understand the missing RENAME, because at that line in the source (eg. act_wiz.c:4880) there is a reference to "rename" not "RENAME" - as C is case-sensitive.

About the only way that link error would happen is if you had something like this in mud.h:

#define rename RENAME

but there is no such thing.

Anyway, after changing the makefile, I suggest you delete the object files, as it doesn't know to recompile if you have only changed compiler options, eg. type:

rm *.o


- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Yakir   (17 posts)  Bio
Date Reply #2 on Sat 18 Aug 2001 09:43 AM (UTC)
Message
I tried deleting all the .o files and recompile. It didn't work because i had 'REG = -DREGEX' uncommented in the Makefile so I commented it and most of the .o files compiled correctly with a few 'else' errors. But then it stoped in the same place as before with the same problems and errors. I just don't know what to do.
I thought that I may have inadvertently copied one or more of the src files edited for the Borland compiler, so I replaced all the src files with the originals from the .tgz file, but it didn't help and I still can't compile. Anyone have any ideas? I'm all out.
One more thought: My machine currently runs Windows ME until I can get my brother to get over to my place to gimme a hand to install Debian Linux. As it turns out, Microsoft being the geniuses that they are decided to take 'Real Dos' mode out of WinME to shorten the load time by about 25 - 30 seconds, the fools. So, I had to manualy install 'Real Dos' mode so that I could run things such as Borland C++ Builder 5.5, a few older games and the like. I was thinking that maybe some problem with dos is messing up the compile.
Any thoughts?
Top

Posted by Nick Gammon   Australia  (23,165 posts)  Bio   Forum Administrator
Date Reply #3 on Sat 18 Aug 2001 11:32 PM (UTC)
Message
It is hard to say what has happened, especially when it works for me, although it sounds like you have a slightly different version of Cygwin.

Certainly, installing Linux will simplify things, because you are then compiling on the operating system it was originally written for.

You can set up a "dual-boot" PC, so you can boot into Windows (eg. to play games) and Linux for other things.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Yakir   (17 posts)  Bio
Date Reply #4 on Sun 19 Aug 2001 11:49 AM (UTC)
Message
Yah, I've already got BeOS (www.be.com) on my system. Anyway Curious isn't it that no mud has yet been ported to BeOS? Anyway, thanks for your help. I realy apreciate it.
Top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


16,709 views.

It is now over 60 days since the last post. This thread is closed.     Refresh page

Go to topic:           Search the forum


[Go to top] top

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.