Subj : Re: RTL fix To : borland.public.cpp.borlandcpp From : MarvinAvery Date : Mon Sep 13 2004 11:05 am "Igor Vodov" wrote in message news:41408a95$1@newsgroups.borland.com... > I have checked win32.log and there are errors > in C:\BC5\include\stddefs.h unable to open include file 'cstdef' > > then there are 2 more errors in stddefs.h > > and then error deleting C:\BC5\source\rtl\source\stl\bitset. > At this point the build has stopped with errors. > > Any ideas of how these errors could be corrected? > > Thanks, > Igor. I've attached a document that may help you. These are a set of instructions we have used to re-build the RTL. -- Marvin Avery marvin.avery@sdc-dsc.gc.ca ============================================================ Procedure to Rebuild BC++ 32-bit RTL Libraries 1. Ensure FILES=40 in CONFIG.SYS. 2. Ensure TASM.EXE and MAKERSP.EXE are in \BC5\SOURCE\RTL\TOOLS. 3. Copy (and replace) \BC5\SOURCE\RTL\*.* from CD. Turn off read-only attribute on all files. 4. Ensure fix to \BC5\INCLUDE\richedit.h has been applied. At line 822, replace #define PFA_JUSTIFY 4 /* New paragraph-alignment option 2.0 (*) with #define PFA_JUSTIFY 4 /* New paragraph-alignment option 2.0 (*) */ 5. Apply BTS-37621 and BTS-13191 fixes to RTL file \BC5\SOURCE\RTL\SOURCE\MEMORY\COMMON32\heap.c In the function _get_more_heap(), at line 473, replace if (_virt_reserve(MAX(_virt_heap_size, aMinSize), &v, &vsize) == 0) with if (_virt_reserve(MAX(_virt_heap_size, aMinSize+PAGESIZE), &v, &vsize) == 0) In the function _release_heap_at(), at line 589, replace _virt_decommit(h->sysBlocks[h->numSysBlocks - 1] + newSize, h->cSize - newSize); with _virt_decommit(((char *) h) + newSize, h->cSize - newSize); 6. Fix \BC5\SOURCE\RTL\SOURCE\EXCEPT\COMMON32\makefile by removing the line containing XX.OBJ. 7. Iff generating a debug version, comment out the instruction to build the multi thread DLL in the file \BC5\SOURCE\RTL\build.bat at the line under the label :bwin32. 8. Make sure there is at least 100-150 MB free disk space. Start MS-DOS prompt, go to \BC5\SOURCE\RTL and execute the commands (if BC++ is installed in a folder different from C:\BC5, change commands accordingly): SET BCROOT=C:\BC5 SET DEBUG=1 only if a debug version is required SET PATH=%PATH%,C:\BC5\SOURCE\RTL\TOOLS BUILD WIN32 9. Check \BC5\SOURCE\RTL\LOG\win32.log for errors. If no serious problems, copy \BC5\SOURCE\RTL\LIB\cw3230*.dll to \BC5\BIN and \BC5\SOURCE\RTL\LIB\cw*.lib to \BC5\LIB. May want to copy other .LIB and .OBJ files too. 10. If using debug version, indicate to IDE the source directories to use for RTL debugging. Some (but not all) of these directories may be: \BC5\SOURCE\RTL\SOURCE\MEMORY\COMMON32 \BC5\SOURCE\RTL\SOURCE\IOSTREAM \BC5\SOURCE\RTL\SOURCE\STRING 11. If errors like ‘cannot find in source libraries' occur during RTL debugging, then additional RTL source libraries most likely need to be specified. .