[Spread-users] newbie trying to compile win32 spread daemon

Jonathan Stanton jonathan at cnds.jhu.edu
Fri Apr 2 19:55:40 EST 2004


The quick answer is to just delete the 
#include <unistd.h> 
line from lex.yy.c. That header is not needed for Windows and does not 
exist on the platform. 

That may be all you have to do to build it. (for version 3.17.1) 

If you do have other problems with building it then keep reading...
Another note about windows compiling, we have built the binaries using 
Visual C++ 6.0 in the past and that is what the build files we include are 
from. We have recently tried Visual .Net and we know that the current 
3.17.2rc3 source release will not build without changes on that. However 
the previous stable release should build (3.17.1). The windows build 
problems with the current version will be fixed very shortly.

>From looking at your attached trace it seems like you are trying to build 
the 3.17.2rc3 -- To do that you will need to make the following changes to 
your project files

Add YY_NEVER_INTERACTIVE and HAVE_GOOD_VARGS as preprocessor defines in 
the project file.

That may be enough to make the build succeed. 

Jonathan

On Fri, Apr 02, 2004 at 11:52:43AM -0600, Joshua Chen wrote:
> Hey all,
> 
> I'm trying to compile the spread.exe for win32, and I'm always coming up
> with the "unistd.h" not found error in lex.yy.c.  I'm wondering if I'm
> missing something while compiling? I've used VC++ 6.0 and Visual Studio 2003
> and I'm running winXP...has anyone else built spread.exe for windows?
> 
> I've tried copying a unistd.h from unix, but that doesn't work, and I've
> tried keeping a empty unistd.h file but then I get some missing functions
> and unresolved extern symbols..
> 
> Any ideas where I can either compile spread.exe for myself, or find a
> pre-compiled binary? 
> 
> 
> Here's the output from visual studio 2003 (this is with a dummy unistd.h
> file)
> 
> Compiling...
> lex.yy.c
> lex.yy.c(1893) : warning C4013: 'isatty' undefined; assuming extern
> returning int
> Linking...
> auth-ip.obj : error LNK2019: unresolved external symbol _Alarmp referenced
> in function _ip_init
> auth-null.obj : error LNK2001: unresolved external symbol _Alarmp
> spread.obj : error LNK2019: unresolved external symbol _Alarmp referenced in
> function _main
> ./spread.exe : fatal error LNK1120: 1 unresolved externals
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> spread - 4 error(s), 1 warning(s)
> 
> 
> ------ Build started: Project: s, Configuration: Release Win32 ------
> 
> Linking...
> data_link.obj : error LNK2019: unresolved external symbol _sock_strerror
> referenced in function _DL_init_channel
> ./s.exe : fatal error LNK1120: 1 unresolved externals
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> s - 2 error(s), 0 warning(s)
> 
> 
> ------ Build started: Project: r, Configuration: Release Win32 ------
> 
> Linking...
> data_link.obj : error LNK2019: unresolved external symbol _sock_strerror
> referenced in function _DL_init_channel
> ./r.exe : fatal error LNK1120: 1 unresolved externals
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> r - 2 error(s), 0 warning(s)
> 
> 
> ------ Build started: Project: libtsp, Configuration: Release Win32 ------
> 
> libtsp - up-to-date.
> 
> 
> ------ Build started: Project: libsp, Configuration: Release Win32 ------
> 
> libsp - up-to-date.
> 
> 
> ------ Build started: Project: flooder, Configuration: Release Win32 ------
> 
> Linking...
> LINK : fatal error LNK1181: cannot open input file
> '\java\lib\spread\libsp.lib'
> 
> Build log was saved at
> "file://c:\java\lib\spread\win32\flooder\BuildLog.htm"
> flooder - 1 error(s), 0 warning(s)
> 
> 
> ---------------------- Done ----------------------
> 
>     Build: 2 succeeded, 5 failed, 0 skipped
> 
> 
> Here is the output with the "missing unistd.h" 
> 
> 
> ------ Build started: Project: spread, Configuration: Release Win32 ------
> 
> Compiling...
> y.tab.c
> y.tab.c(688) : warning C4102: 'yyerrlab' : unreferenced label
> y.tab.c(683) : warning C4102: 'yynewerror' : unreferenced label
> status.c
> spread.c
> \java\lib\spread\spread.c(89) : warning C4013: 'Alarmp' undefined; assuming
> extern returning int
> skiplist.c
> session.c
> \java\lib\spread\session.c(595) : warning C4013: 'sock_strerror' undefined;
> assuming extern returning int
> protocol.c
> \java\lib\spread\protocol.c(155) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,int,void *)'
> \java\lib\spread\protocol.c(159) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,int,void *)'
> \java\lib\spread\protocol.c(295) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\protocol.c(298) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\protocol.c(618) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\protocol.c(620) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\protocol.c(1199) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> network.c
> \java\lib\spread\network.c(474) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> message.c
> \java\lib\spread\message.c(333) : warning C4018: '>' : signed/unsigned
> mismatch
> memory.c
> membership.c
> \java\lib\spread\membership.c(329) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(467) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(499) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(819) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(820) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(821) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(822) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(823) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(841) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(842) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(871) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(872) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(873) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(874) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(882) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(883) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(884) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(899) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(900) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(912) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(913) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(953) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(984) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1401) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1402) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1403) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1766) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1767) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1768) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1769) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1770) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(1955) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> \java\lib\spread\membership.c(2072) : warning C4113: 'void (__cdecl *)()'
> differs in parameter lists from 'void (__cdecl *)(int,void *)'
> log.c
> lex.yy.c
> \java\lib\spread\lex.yy.c(13) : fatal error C1083: Cannot open include file:
> 'unistd.h': No such file or directory
> groups.c
> flow_control.c
> events.c
> data_link.c
> \java\lib\spread\data_link.c(108) : warning C4013: 'sock_strerror'
> undefined; assuming extern returning int
> \java\lib\spread\data_link.c(226) : warning C4047: '=' : 'char *' differs in
> levels of indirection from 'int'
> configuration.c
> auth-null.c
> \java\lib\spread\auth-null.c(58) : warning C4013: 'Alarmp' undefined;
> assuming extern returning int
> auth-ip.c
> \java\lib\spread\auth-ip.c(87) : warning C4013: 'Alarmp' undefined; assuming
> extern returning int
> arch.c
> \java\lib\spread\arch.c(50) : warning C4013: 'sprintf' undefined; assuming
> extern returning int
> alarm.c
> acp-permit.c
> acm.c
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> spread - 1 error(s), 51 warning(s)
> 
> 
> ------ Build started: Project: s, Configuration: Release Win32 ------
> 
> Compiling...
> s.c
> Linking...
> data_link.obj : error LNK2019: unresolved external symbol _sock_strerror
> referenced in function _DL_init_channel
> ./s.exe : fatal error LNK1120: 1 unresolved externals
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> s - 2 error(s), 0 warning(s)
> 
> 
> ------ Build started: Project: r, Configuration: Release Win32 ------
> 
> Compiling...
> r.c
> Linking...
> data_link.obj : error LNK2019: unresolved external symbol _sock_strerror
> referenced in function _DL_init_channel
> ./r.exe : fatal error LNK1120: 1 unresolved externals
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> r - 2 error(s), 0 warning(s)
> 
> 
> ------ Build started: Project: libtsp, Configuration: Release Win32 ------
> 
> Compiling...
> sp.c
> c:\java\lib\spread\alarm.h(41) : warning C4005: 'DEBUG' : macro redefinition
>         command-line arguments :  see previous definition of 'DEBUG'
> \java\lib\spread\sp.c(457) : warning C4013: 'sock_strerror' undefined;
> assuming extern returning int
> Creating library...
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> libtsp - 0 error(s), 2 warning(s)
> 
> 
> ------ Build started: Project: libsp, Configuration: Release Win32 ------
> 
> Compiling...
> sp.c
> \java\lib\spread\sp.c(457) : warning C4013: 'sock_strerror' undefined;
> assuming extern returning int
> memory.c
> events.c
> alarm.c
> Creating library...
> 
> Build log was saved at "file://c:\java\lib\spread\win32\libsp\BuildLog.htm"
> libsp - 0 error(s), 1 warning(s)
> 
> 
> ------ Build started: Project: flooder, Configuration: Release Win32 ------
> 
> Compiling...
> flooder.c
> Linking...
> LINK : fatal error LNK1181: cannot open input file
> '\java\lib\spread\libsp.lib'
> 
> Build log was saved at
> "file://c:\java\lib\spread\win32\flooder\BuildLog.htm"
> flooder - 1 error(s), 0 warning(s)
> 
> 
> ------ Build started: Project: tuser, Configuration: Release Win32 ------
> 
> Compiling...
> user.c
> Linking...
> LINK : fatal error LNK1181: cannot open input file
> '\java\lib\spread\libtsp.lib'
> 
> Build log was saved at "file://c:\java\lib\spread\win32\BuildLog.htm"
> tuser - 1 error(s), 0 warning(s)
> 
> 
> ---------------------- Done ----------------------
> 
>     Build: 2 succeeded, 5 failed, 0 skipped
> 
> 
> Josh.
> 
> 
> _______________________________________________
> Spread-users mailing list
> Spread-users at lists.spread.org
> http://lists.spread.org/mailman/listinfo/spread-users

-- 
-------------------------------------------------------
Jonathan R. Stanton         jonathan at cs.jhu.edu
Dept. of Computer Science   
Johns Hopkins University    
-------------------------------------------------------




More information about the Spread-users mailing list