Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Trouble Running Very Large Programs

Status
Not open for further replies.

Elkari

Programmer
May 1, 2001
144
0
0
US
One of my projects has gotten out of hand. After 6 years of adding user requested features to it, the debug version of the program will no longer run. I get the error message 'Unrecoverable Error 37: Exclusive Required' whenever I try. The NG does not list this run time error.
This happened before with this project, but I was able to get it working again by removing old functions from the code. Now will a whole new module, there are no more functions to remove to reduce the size of the program. The size of it stands at 2.4Megs. The live program has a size of 2.1Megs.

Is there a size limitation that I crossed? Is there a way to extend this limit or do I have to try to tighten up the code again?
 
Elkari: Please, let us know the "platform" from which you are trying to debug your project. The machine ?, Windows ?, what version ?, Clipper, what version ? And others items about your "environment", all of this will help us. Thanks.
 
The program is designed for DOS and is running on a machine that boots to a DOS prompt. The DOS version is 6.22. The machine logs in to a network using NOVELL NetWare version 3.12.
The program is written in Clipper 5.2e and linked with Blinker 5.0.
The memory available to run any application is 631,440 bytes, 574,976 convertional and 56,464 upper. Total memory installed is 8Megs.

If there is anything else you need to know, just ask for it. Thanks for your help.
 
Here's some more information...

I removed the new module to see if the program would work without it and it does. The program size w/o the module is 2,401,343 and with it the size is 2,408,111. So some limit is being passed with the increase of 6768 bytes to the program.
 
is cld linked in?
can you run cld <app_name> and get into debug?
in your .lnk, check how your overlays are getting created, or if overlays are being used at all.
 
CLD is linked in. When Running CLD <app_name> using the live program, I cannot get into the debugger. Running CLD <app_name> using the debug program gives me the same error.
All the Clipper programs I am working with seem to cause the screen to flash before going into the program. This is not doing that. Also, if you quickly press Alt-D right after running the program to get into the debugger, the callstack lists just the main module of the program and an error handling module errorsys. It is not even do this.
 
May be your module is trying to access the path or directory which has ACCESS granted in Novell. It's like password protected, read only etc.
 
The program normally asks for a user name and password before getting to the main menu of the program where access to the new module is. This is failing well before that. I am not even getting to the login prompts as I stated in my message on May 3.

Thanks for offering the new angle to check.
 
Before looking over this lengthy script, there are three items I would like to mention. First, as a temporary solution you will notice that all of the Bandit modules are commented out to reduce the size of the debug EXE. Second, this did fix the in-house debug version, however, the non-debug client version of the program is still quite large. If the client needs any more modules added, then that program will experiene the same trouble the debug version did once it grows past 2.4Megs.
Third, the only difference between the debug and the non-debug link scripts is the CLD.LIB line.
Thanks for any help you can give.
Well here it is...

EXOSPACE EXECUTABLE NODELETE
EXOSPACE PROCEDURE DEPTH 75
EXOSPACE EXECUTABLE CLIPPER //VMSIZE:32768 F:127;E4096;DYNF:0;SWAPK:131071;TEMPPATH:'.\';SWAPPATH:'.\'
STACK 8192
MAP S,A

FILE ccds.obj

FILE comport.obj
FILE dispatch.obj
FILE errorsys.obj
FILE getbeta.obj
FILE logs.obj
FILE menu.obj
FILE message.obj
FILE michlib.obj
FILE msdsio.obj
FILE mssslib.obj
FILE newest.obj
FILE nyutl940.obj
FILE perkin.obj
FILE sysio.obj
FILE syslib.obj
FILE notebook.obj

FILE txbat400.obj
FILE txbat401.obj
FILE txbatlib.obj
FILE txdat110.obj
FILE txdat114.obj
FILE txdat115.obj
FILE txdat190.obj
FILE txdatlib.obj
FILE txlbrlib.obj
FILE txlib310.obj
FILE txlib320.obj
FILE txlib330.obj
FILE txlib331.obj
FILE txlib340.obj
FILE txlib350.obj
FILE txlib355.obj
FILE txmlr740.obj
FILE txmlr760.obj
FILE txmlrrpt.obj
FILE txmlrobj.obj
FILE txpur913.obj
FILE txrpt600.obj
FILE txrpt620.obj
FILE txrpt621.obj
FILE txrpt622.obj
FILE txrpt625.obj
FILE txrpt626.obj
FILE txrpt627.obj
FILE txrpt628.obj
FILE txrpt629.obj
FILE txrpt630.obj
FILE txrpt635.obj
FILE txrpt650.obj
FILE txrpt660.obj
FILE txrpt680.obj
FILE txrpt690.obj
FILE txrpt691.obj
FILE txrpt692.obj
FILE txbecmrg.obj
FILE txccmrg.obj
FILE txcltmrg.obj
FILE txprkmrg.obj
#FILE txpbmrg.obj
FILE txthbmrg.obj
FILE txrsl120.obj
FILE txrsl130.obj
FILE txrsl150.obj
FILE txrsl151.obj
FILE txrsl176.obj
FILE txrsllib.obj
FILE txsch200.obj
FILE txsta815.obj
FILE txutl911.obj
FILE txutl912.obj
FILE txutl913.obj
FILE txutl914.obj
FILE txutl980.obj
FILE txutl999.obj

#FILE neorpt
#FILE nrpmenu
#FILE nrelfile
#FILE nrprddsu
#FILE nrpsave
#FILE npicklst
#FILE ndbindex
#FILE nrpsetdb
#FILE nnewdb
#FILE nwalkdir
#FILE nrpdbopn
#FILE nrpnewrp
#FILE ninitpcd
#FILE nmakedsp
#FILE nquery

#LIB g:\bandit\bandit2
#LIB g:\bandit\banditi2

LIB u:\axs4.10\comm\axsxcomm
LIB u:\axs4.10\clip52\dbfaxs

FILE u:\clipper5.2e\lib\cld.lib

LIB g:\common\c\msds_exo
LIB g:\common\asm\msdsasm5
LIB u:\overlay\exospace\overclx
LIB u:\clipper5.2e\lib\clipper
LIB u:\clipper5.2e\lib\terminal
LIB u:\clipper5.2e\lib\extend
LIB u:\clipper5.2e\lib\dbfntx
LIB h:\sw.413\xslvclip
#LIB g:\bandit\funckyrt
 
Couple of things I see in your .lnk file

1.You said you are linking with Blinker, but the .lnk references EXOSPACE.

2. Blinker supports dynamic overlaying, and this .lnk suggests that no overlaying is being used. You need to overlay most of those .obj's..that should help quite a bit.

 
My mistake in an earlier entry. This program thas always been linked with EXOSPACE. Blinker was tried once, but some of the communication aspects of the program became flaky, so we went back to using EXOSPACE version 1.0g.
 
I inherited an old Clipper program and it took quite a while to figure out the old obscure libraries it used and how to link it together. This works very well. Get rid of exospace. It uses 40 .prg's compiled into 4 obj's and with the compress line it is down to a manageable 450k with 140 users on a NT network. Use this as a baseline. Hope it helps.

**************
BLINKER CACHE XMS 25%,2048
BLINKER EXECUTABLE EXTENDED
BLINKER EXECUTABLE CLIPPER //F:221
BLINKER INCREMENTAL ON
BLINKER EXECUTABLE COMPRESS 1
MAP=STATUS.MAP A,S
STACK 6148

SEARCH ROOTVX
BEGINAREA
LIBRARY FUNCKY52
LIBRARY FUNCKYVM
LIBRARY FUNCKY2X
LIBRARY ARTFULM
LIBRARY ARTFUL
LIBRARY ARTFULC
LIBRARY OMENU
LIBRARY SPECPROJ
LIBRARY NANFORX
LIBRARY NANFOR
LIBRARY CPMI
FILE FFVIEW52
FILE IAMIDLE
LIBRARY FLEX52
LIBRARY FFHLP52
LIBRARY OSLIB
LIBRARY IDLEFUNC
ENDAREA
SEARCH BLXCLP52
SEARCH EVALTIME
LIBRARY SUPER352
@SIX3.LNK
@CL520MIN
FILE C:\CLIPPER\LIB\CLD.LIB
***************
 
Hi Elkari,

I am facing the same problem what u had in clipper

unrecoverable error 37: exclusive reqd.

I am using exospace and this error has frustrated me a lot.

pls. inform me the remedy that u choose to resolve this issue.

ketan.
 
If you are using Exospace, try using OPTEDIT to achieve
more ram. This works with clipper 5.3.
 
Hi:
Blinker make your executable more than big. with rtlink or exospace is small. and insert on your compiler next:
Clipper myprogram /l

---/l delete number line to use on CLD, if your program is ok, line not needed.

Try this and rtlink or exospace.

SAludos desde Mexico.
 
I have developed a project using clipper ver 5.3 and exospace.

It was working without any problems but since a major upgrade in which i have added certain new modules, the package has stopped executing.

On execution of the EXE, on the start itself it gives me the unrecoverable error 37 exclusive required.

I don't have any remedy to resolve this issue.

To compile the programs i use /m option.
The exospace statement is used with out any parameters except the link script filename.

clipper /i option will suppress line nos. But when runtime errors come up, it becomes difficult to trace the problem at clients end.

I have similar other projects using the same compliation and linking parameters, and which are greater in size than this project, but they still work well.

I have tried compiling programs on dos ver 6.22 and on windows 95 but the error presists.

The optedit is enabled with extramin 9000 option. Increasing the size has also been checked but that doesn't help either.

thanks for the advice, but kindly suggest some other way out.

Doesn't clipper have any patch for this problem !!!

ketan patel.




 
I am installing linux red hat 7.2 I found problems when run the application with clipper 5.2 and exospace, please if you working with these tools, send me information to vurbina@fabritex.com.pe

Thanks
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top