View Issue Details

IDProjectCategoryView StatusLast Update
0001953unrealircdpublic2004-07-12 16:43
ReporterAngryWolf Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionopen 
Product Version3.2.1 
Summary0001953: Missing symbols from wircd.def
DescriptionZell reported that the following modules of mine couldn't be compiled due to unresolved symbols:

1. regexban:

regexban.obj : error LNK2001: unresolved external symbol _regfree
regexban.obj : error LNK2001: unresolved external symbol _regerror
regexban.obj : error LNK2001: unresolved external symbol _regcomp
regexban.obj : error LNK2001: unresolved external symbol _regexec
src/modules/angry/regexban.dll : fatal error LNK1120: 4 unresolved externals
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.

2. cgiirc

Creating library src/modules/cgiirc.lib and object src/modules/cgiirc.exp
cgiirc.obj : error LNK2001: unresolved external symbol _gethostbyname@4
cgiirc.obj : error LNK2001: unresolved external symbol _inet_addr@4
src/modules/angry/cgiirc.dll : fatal error LNK1120: 2 unresolved externals
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.

To fix the errors, would you mind adding these symbols to wircd.def? Thanks in advance.
3rd party modules

Activities

codemastr

2004-07-12 16:43

reporter   ~0007024

Uhh no? Those symbols are not defined in Unreal, they are defined in other libraries. The wircd.def is for symbols defined in wircd.exe, none of those are. On *nix, the socket stuff is in libc, as is regexp, so it works. On Windows, sockets are in Winsocks, and there is no regexp so you'll need to use libtre.

For gethostbyname/inet_addr you'll need to link to ws2_32.lib:
nmake -f makefile.win32 custommodule MODULEFILE=cgiirc EXLIBS=ws2_32.lib

For regexp you'll need to link to the included libtre:
nmake -f makefile.win32 custommodule MODULEFILE=regexban EXLIBS=src\win32\tre.lib

Just like on *nix, EXLIBS can be used when you need to specify additional libraries. Using the above commands, I was able to compile both of those modules just fine.

Issue History

Date Modified Username Field Change
2004-07-12 15:48 AngryWolf New Issue
2004-07-12 16:43 codemastr Status new => closed
2004-07-12 16:43 codemastr Note Added: 0007024