WG 3.3 Wont compile
Moderator: Mod Squad
WG 3.3 Wont compile
Ok, one month in and still WG 3.3 will not compile. NO errors are generated yet nothing happens. Anyway to just get the damn libraries like a regular dev environment?
Re: WG 3.3 Wont compile
I'm sorry - help me understand what you're doing, trying to do, and what is happening.The Storm wrote:Ok, one month in and still WG 3.3 will not compile. NO errors are generated yet nothing happens. Anyway to just get the damn libraries like a regular dev environment?
Re: WG 3.3 Wont compile
Easy, we're just trying to get WG 3.3 to compile. Doing make doesn't do a thing. Using the IDE to compile doesn't do it either. Using the instructions in Netvillage.doc doesn't work as the changes they say to make in the make file don't exist.Questman wrote:I'm sorry - help me understand what you're doing, trying to do, and what is happening.The Storm wrote:Ok, one month in and still WG 3.3 will not compile. NO errors are generated yet nothing happens. Anyway to just get the damn libraries like a regular dev environment?
Why can't the libraries just be distributed rather than the whole source? All we want to do is make modules and not actually change WG.
That's kind of what I'm saying. You don't really need more than the libraries that are provided with the WG binaries and the WG dev kit.. you could easily setup your own environment.
When I compile, I open a new command prompt and then run my "wg32" batch file which contains:
My structure is:
Borland C 5.01: C:\BC5
Worldgroup: C:\WGSERV
Worldgroup Dev: C:\WGDEV
An example of my Makefile:
I use MKV2P ELWBIO to compile it for WG2DOS, and MKNT ELWBIO to compile it for WG3NT.
The same source tree will compile both WG3NT and WG2DOS.
The main key is to set up your environment.
Here is my C:\WGDEV\SRC\GCRULES.MAK:
I hope this helps.
When I compile, I open a new command prompt and then run my "wg32" batch file which contains:
Code: Select all
@echo off
SET CONFIG=WG3DEV
SET WGDEV=C:\WGDEV
SET BC50=C:\BC5
SET COMPILER=C:\BC5
SET DOSEXT=C:\RUN286
SET WGDOS=C:\WGSERVD
SET WGNT=C:\WGSERV
SET BUDOS=
SET VB3=C:\VB
SET LIB=C:\WGDEV\INC;C:\WGDEV\ENTSRC;C:\RUN286\BC5\LIB;C:\BC5\LIB
SET CMP=BC50-32
SET OS=WNT
SET WGPATH=C:\WINDOWS;C:\BC5\BIN;C:\;C:\RUN286\BIN;C:\WGDEV\BIN;C:\TASM\BIN;C:\WINDOWS\SYSTEM;c:\WINDOWS\SYSTEM32
SET PATH=C:\WINDOWS;C:\BC5\BIN;C:\;C:\RUN286\BIN;C:\WGDEV\BIN;C:\TASM\BIN;C:\WINDOWS\SYSTEM;c:\WINDOWS\SYSTEM32;\WGDEV\WGTOOLS\BTRIEVE;\PROGRA~1\IDMCOM~1\ULTRAE~1;
Borland C 5.01: C:\BC5
Worldgroup: C:\WGSERV
Worldgroup Dev: C:\WGDEV
An example of my Makefile:
Code: Select all
###############################################################################
##### This makefile generates ELWBIO.DLL #####
###############################################################################
!include $(WGDEV)\src\gcrules.mak
DEFILE =
VIRFILES =
!if $(OS) == WNT
DLLLIB = $(DLLLIB) wgserver.lib galgsbl.lib
MATHDLL =
DEFILE =
!endif
!if $(OS) == WG2
DLLLIB = $(DLLLIB) wgserver.lib galgsbl.lib $(BORLAND)\lib\mathh.lib ${DOSEXT}\b
c4\lib\phapi.lib
MATHDLL = $(DOSEXT)\bc4\lib\fpdmy
DEFILE = $(WGLIBDIR)\mathdef.def
!endif
OBJFILES = \
${TEMPDIR}\elwbio.obj
start: \
$(GCBUILD) \
elwbio.dll
elwbio.dll: \
$(OBJFILES) \
$(DLLLIB) \
$(DEFILE) \
$(VIRFILES)
$(LINK) $(LIBCMD) @&&|
$(PRODLL) ${MATHDLL} $(OBJFILES)
$(RUNDIR)\$&
$(RUNDIR)\$&
$(DLLLIB) $(LINKDLL)
$(DEFILE)
|
The same source tree will compile both WG3NT and WG2DOS.
The main key is to set up your environment.
Here is my C:\WGDEV\SRC\GCRULES.MAK:
Code: Select all
############################################################################
## General Rules for Building Worldgroup Files ##
############################################################################
.autodepend
.silent
!if $d(NOSILENT)
.nosilent
!endif
############################################################################
## Check for OS and CMP variables ##
############################################################################
!if !$d(OS)
! error OS environment variable not set!
!endif
!if !$d(CMP)
! error CMP environment variable not set!
!endif
!if $(OS) == DOS && !$d(BUDOS)
! message You are not set up to properly build VIR files.
! message Check your documentation if you would like to build VIR files
! message from your make files.
NOVIRS=
!endif
############################################################################
## Operating system include ##
############################################################################
TEMPDIR = .\GCBUILD
VIRDIR = $(TEMPDIR)
RUNDIR = .
WGSRCDIR = $(WGDEV)\SRC
WGLIBDIR = $(WGDEV)\LIB
TOOLDIR = $(WGDEV)\BIN
MAKDIR = $(WGSRCDIR)
!if !$d(NUMERRS)
NUMERRS = 10
!endif
!include $(MAKDIR)\$(OS).MAK
############################################################################
## Directories, defined by environment variables ##
############################################################################
DLIBDIR = $(TEMPDIR)
OBJDIR = $(TEMPDIR)
MSGDIR = .
MSGHDIR = $(TEMPDIR)
BCRDIR = .
INCDIR = $(WGDEV)\INC
STDINC = $(INCDIR);$(MSGHDIR);$(OSINCDIR);${WGSRCDIR};${MOREINCS}
############################################################################
## Search paths ##
############################################################################
.path.h = $(STDINC)
.path.lib = $(TEMPDIR);$(WGLIBDIR)
.path.def = $(TEMPDIR);$(WGLIBDIR)
.path.obj = $(OBJDIR)
.path.exe = $(RUNDIR)
.path.msg = $(TEMPDIR)
.path.dll = $(RUNDIR)
.path.vir = $(VIRDIR)
.path.bcr = $(TEMPDIR)
.path.cfg = $(TOOLDIR)
.path.mak = $(MAKDIR)
.path.dum = $(TOOLDIR)
.path.res = $(TEMPDIR)
.path.rc = .;$(TEMPDIR)
.path.c = .;$(TEMPDIR) # For screen files #
###############################################################################
##### Set up parse files #####
###############################################################################
PARSEFILES = \
$(PARSEFILES) \
*.msg \
*.bcr \
*.dmd \
*.mdf \
*.htm \
*.cvt \
*.def
MDFFILES = \
$(TEMPDIR)\*.dmd \
$(TEMPDIR)\*.mdf
HTMLFILES = \
$(TEMPDIR)\*.htm
CVTFILES = \
$(TEMPDIR)\*.cvt
CVTFILDIR = $(RUNDIR)\wgsdfcvt
HTMLDIR = $(RUNDIR)\webpages
GIFFILES = *.gif
GIFDIR = $(RUNDIR)\webpages\images
JPGFILES = *.jpg
BINFILES = *.bin
BINDIR = $(RUNDIR)
###############################################################################
##### Compile/Assemble/Link based on OS, MODEL, and DEBUG #####
###############################################################################
!include $(MAKDIR)\$(CMP).MAK
!if !$d(COMPILER)
! error "COMPILER environment variable not defined!"
!endif
###############################################################################
##### For source debugging... #####
###############################################################################
!if $d(SRCDBG)
PARSEOPTS = $(PARSEOPTS) -DSRCDBG
CC = $(CC) -v -y
! if $(OS) == DOS || $(OS) == WG2
LINK = $(LINK) /v /l
! else
LINK = $(LINK) /v
! endif
!endif
###############################################################################
##### For special server versions... #####
###############################################################################
!if !$d(TIMESTAMP)
TIMESTAMP = 03:10:00 # Current server version
! if $d(WEBCAST)
TIMESTAMP = 02:00:00 # Current webcast version number
! endif
! if $d(ACTIBASE)
TIMESTAMP = 01:00:00 # Current ActiBase server version
! endif
!endif
#!if !$d(DATESTAMP)
# DATESTAMP = 01/01/97 # Date of current builds #
#! if $d(WEBCAST)
# DATESTAMP = 01/01/97 # Current webcast date #
#! endif
#!endif
!if $d(WEBCAST)
PARSEOPTS = $(PARSEOPTS) -DWEBCAST
!elif $d(ACTIBASE)
PARSEOPTS = $(PARSEOPTS) -DACTIBASE
!else
PARSEOPTS = $(PARSEOPTS) -DWORLDGROUP
WORLDGROUP =
!endif
!if $d(GCV30)
PARSEOPTS = $(PARSEOPTS) -DGCV30
!endif
###############################################################################
##### For Code Guard debugging... #####
###############################################################################
!if $d(CGDBG)
! if $(OS) == WNT
CC = $(CC) -v -vG
LINK = $(LINK) /v
DLLLIB = $(COMPILER)\lib\cg32.lib $(DLLLIB)
EXELIB = $(COMPILER)\lib\cg32.lib $(EXELIB)
STATLIB = $(COMPILER)\lib\cg32.lib $(STATLIB)
! endif
!endif
###############################################################################
##### For "mangled" c++ symbols in MAP file #####
###############################################################################
!if $d(MANGLE)
LINK = $(LINK) /Gm
!endif
###############################################################################
##### For generating ASM output for compiles #####
###############################################################################
!if $d(GENASM)
CC = $(CC) -S
!endif
###############################################################################
##### For generating STARTER version of certain files #####
###############################################################################
!if $d(STARTER)
CC = $(CC) -DSTARTER
!endif
###############################################################################
##### Miscellaneous useful macro definitions #####
###############################################################################
SCNBGN = copy /a $(WGSRCDIR)\scnbgn.c $(TEMPDIR)\$&.c > nul
SCNMAK = &add2c $** $(TEMPDIR)\makescns.$$t $(TEMPDIR)\$&.c > nul
SCNEND = copy /a $(TEMPDIR)\$&.c + $(WGSRCDIR)\scnend.c $(TEMPDIR)\$&.c> nul
!ifdef DEBUG
DONEMSG = Build Complete! (DEBUG Version)
!else
DONEMSG = Build Complete!
!endif
###############################################################################
##### Generates the compiler option file #####
###############################################################################
!if $d(DEBUG)
PARSEOPTS = $(PARSEOPTS) -DDEBUG
! if $(OS) == DOS || $(OS) == WG2
! if $(MODEL) == LARGE
PARSEOPTS = $(PARSEOPTS) -N
! endif
! endif
!endif
GCBUILD = tmpbld.bld
###############################################################################
##### Implicit Rule Definitions #####
###############################################################################
.dum.bld:
#Rename old build file
if exist $(TEMPDIR)\$&.bld rename $(TEMPDIR)\$&.bld $&.old
#Create current temp build file in another directory
# just in case $(TEMPDIR) does not exist yet
type &&|
$(PARSEOPTS)
| > $(TOOLDIR)\tmp.bld
#Sync everything up, delete directory if needed
galsync $(TOOLDIR)\tmp.bld $(TEMPDIR)\$&.old $(TEMPDIR) -Q
del $(TOOLDIR)\tmp.bld
#Parse all needed files
galparsf &&|
$(PARSEOPTS)
$(PARSEFILES)
| $(TEMPDIR) -Q
#save current build options
type &&|
$(PARSEOPTS)
| > $(TEMPDIR)\$&.bld
if exist $(TEMPDIR)\$&.old del $(TEMPDIR)\$&.old
if exist *.obj galcopy *.obj $(TEMPDIR) -Q
!if $d(BUILD)
galmkdir $(RUNDIR)
galparsf &&|
$(PARSEOPTS)
$(MDFFILES)
| $(RUNDIR) -Q -B
galmkdir $(HTMLDIR)
galparsf &&|
$(PARSEOPTS)
$(HTMLFILES)
| $(HTMLDIR) -Q -B
galmkdir $(CVTFILDIR)
galparsf &&|
$(PARSEOPTS)
$(CVTFILES)
| $(CVTFILDIR) -Q -B
galmkdir $(GIFDIR)
galmkdir $(BINDIR)
galcopy $(GIFFILES) $(GIFDIR) -Q
galcopy $(JPGFILES) $(GIFDIR) -Q
galcopy $(BINFILES) $(BINDIR) -Q
!endif
.c.obj:
$(CC) @&&|
$(PARSEOPTS)
$(INCCMD)
$(INCCMD1)
$(OBJCMD)
$(CFIG)
| $<
.cpp.obj:
$(CC) @&&|
$(PARSEOPTS)
$(INCCMD)
$(INCCMD1)
$(OBJCMD)
$(CFIG)
| $<
.c.lst:
$(CC) -S @&&|
$(PARSEOPTS)
$(INCCMD)
$(INCCMD1)
$(OBJCMD)
$(CFIG)
| $<
tasmx /kh10000 $(TEMPDIR)\$&,nul,$(TEMPDIR)\$&
del $*.asm
.cpp.lst:
$(CC) -S @&&|
$(PARSEOPTS)
$(INCCMD)
$(INCCMD1)
$(OBJCMD)
$(CFIG)
| $<
tasmx /kh10000 $(TEMPDIR)\$&,nul,$(TEMPDIR)\$&
del $*.asm
.def.lib:
galparse @&&|
$<
$(TEMPDIR)\$&.def
-Q
$(PARSEOPTS)
|
$(IMPLIB) $(TEMPDIR)\$& $(TEMPDIR)\$&.def
del $(TEMPDIR)\$&.def >nul
.msg.h:
$(TOOLDIR)\galmerge $(MSGHDIR)\$&.msg $(RUNDIR)\$&.msg -Q
$(TOOLDIR)\wgsmsx $(MSGHDIR)\$&.msg nul $(MSGHDIR)\$&.h
.bcr.vir:
galmkdir $(VIRDIR)
!if !$d(NOVIRS)
!if "$(VIRSTART)" != ""
$(VIRSTART)
!endif
$(VIRPRO) $@ $(TEMPDIR)\$&.bcr
if exist $&.$(VIRFILLEX) $(VIRFILL) $&.$(VIRFILLEX) $@
!if "$(VIRSTOP)" != ""
$(VIRSTOP)
!endif
!endif
.rc.res:
$(COMPILER)\bin\brc32 $(PARSEOPTS) -r -fo $(TEMPDIR)\$&.res $<
.mc.rc:
$(COMPILER)\sdktools\mc -v $*.mc
if exist $(TEMPDIR)\$&.rc del $(TEMPDIR)\$&.rc
move $&.rc $(TEMPDIR)
And what OS are you using to do this with?Questman wrote:That's kind of what I'm saying. You don't really need more than the libraries that are provided with the WG binaries and the WG dev kit.. you could easily setup your own environment.
When I compile, I open a new command prompt and then run my "wg32" batch file which contains:
Code: Select all
@echo off SET CONFIG=WG3DEV SET WGDEV=C:\WGDEV SET BC50=C:\BC5 SET COMPILER=C:\BC5 SET DOSEXT=C:\RUN286 SET WGDOS=C:\WGSERVD SET WGNT=C:\WGSERV SET BUDOS= SET VB3=C:\VB SET LIB=C:\WGDEV\INC;C:\WGDEV\ENTSRC;C:\RUN286\BC5\LIB;C:\BC5\LIB SET CMP=BC50-32 SET OS=WNT SET WGPATH=C:\WINDOWS;C:\BC5\BIN;C:\;C:\RUN286\BIN;C:\WGDEV\BIN;C:\TASM\BIN;C:\WINDOWS\SYSTEM;c:\WINDOWS\SYSTEM32 SET PATH=C:\WINDOWS;C:\BC5\BIN;C:\;C:\RUN286\BIN;C:\WGDEV\BIN;C:\TASM\BIN;C:\WINDOWS\SYSTEM;c:\WINDOWS\SYSTEM32;\WGDEV\WGTOOLS\BTRIEVE;\PROGRA~1\IDMCOM~1\ULTRAE~1;
Re: WG 3.3 Wont compile
check your email on my server that will compile wg 3.3 from scratch in 5 minsThe Storm wrote:Easy, we're just trying to get WG 3.3 to compile. Doing make doesn't do a thing. Using the IDE to compile doesn't do it either. Using the instructions in Netvillage.doc doesn't work as the changes they say to make in the make file don't exist.Questman wrote:I'm sorry - help me understand what you're doing, trying to do, and what is happening.The Storm wrote:Ok, one month in and still WG 3.3 will not compile. NO errors are generated yet nothing happens. Anyway to just get the damn libraries like a regular dev environment?
Why can't the libraries just be distributed rather than the whole source? All we want to do is make modules and not actually change WG.
Correct. The LIBs and object components are already included in the kit. You just need to compile your modules.The Storm wrote:Ok, so let me see if I have this right. I DONT need to compile WG 3.3 to make my modules? Just have the sources and the SDK?Questman wrote:Windows XP Pro.
Same configuration moved from a Windows 2000 Pro laptop, though, so it works in both.
Also works on Server 2003.
I put my module code in subdirectories under C:\WGDEV\SRC\APPS\
Re: WG 3.3 Wont compile
Yeah, but he doesn't WANT to compile WG, he wants to compile modules.dspain wrote:check your email on my server that will compile wg 3.3 from scratch in 5 mins
Re: WG 3.3 Wont compile
in the email he sent me on my server he said he couldnt get 3.3 to compile.Questman wrote:Yeah, but he doesn't WANT to compile WG, he wants to compile modules.dspain wrote:check your email on my server that will compile wg 3.3 from scratch in 5 mins
Re: WG 3.3 Wont compile
You are correct but I did email him due to me believing that I had to compile WG first. I thought it odd as others told me this is what had to happen in order to get my mods to work.Questman wrote:Yeah, but he doesn't WANT to compile WG, he wants to compile modules.dspain wrote:check your email on my server that will compile wg 3.3 from scratch in 5 mins
Re: WG 3.3 Wont compile
im actually working on something for ya storm.The Storm wrote:You are correct but I did email him due to me believing that I had to compile WG first. I thought it odd as others told me this is what had to happen in order to get my mods to work.Questman wrote:Yeah, but he doesn't WANT to compile WG, he wants to compile modules.dspain wrote:check your email on my server that will compile wg 3.3 from scratch in 5 mins
where basically its a wgsdk only the required files and borland stuff.
eliminates the need for the complete borland and wg stuff.
Re: WG 3.3 Wont compile
Awesome, we really could use that as we're behind a little bit in this project.dspain wrote:im actually working on something for ya storm.The Storm wrote:You are correct but I did email him due to me believing that I had to compile WG first. I thought it odd as others told me this is what had to happen in order to get my mods to work.Questman wrote: Yeah, but he doesn't WANT to compile WG, he wants to compile modules.
where basically its a wgsdk only the required files and borland stuff.
eliminates the need for the complete borland and wg stuff.
Re: WG 3.3 Wont compile
yeah i did that years ago when i first started compiling my own tele-arena for dos i was moving stuff around so much and pc to pc was easier to make my own dev-kitThe Storm wrote:Awesome, we really could use that as we're behind a little bit in this project.dspain wrote:im actually working on something for ya storm.The Storm wrote: You are correct but I did email him due to me believing that I had to compile WG first. I thought it odd as others told me this is what had to happen in order to get my mods to work.
where basically its a wgsdk only the required files and borland stuff.
eliminates the need for the complete borland and wg stuff.
in the end i had something so much smaller than the original dev-kit