Frank Heckenbach wrote:
Maurice Lombardi wrote:
Running the gpc test suite results in only one failure: y2k.pas (which is new). The problem is with the function sleep: Has this function been changed recently ? (We have been discussing at length of various delay functions).
Nope. (I haven't gotten around to doing anything about the delay issue yet, and AFAIUI, it doesn't affect sleep (whole seconds), anyway.)
What fails exactly?
First the test suite failed on this program. Then I have run it step by step under rhide (compiled with -D__BP_UNPORTABLE_ROUTINES__). The other functions give results as expected, but the sleep time seems to be zero. I have then recompiled from dos prompt with increasing sleep times (and deleting each time .o .gpi .gpm files to be sure) and run it. You may miss a 1 second delay, not a 10 or 100 seconds. No delay up to 10000 seconds, and then it stopped and I had not the patience to wait so long. (I had time to check from an other DOS window that date and time of the system have been changed and increased as expected).
The errors given below seem quite unrelated to
anything this test program does. Do they also occur when running the test suite, or are there other problems then?
To check I have also installed your abovementioned gpc2953b.zip and tried to compile y2k.pas. It fails with:
C:\djgpp\gnu\gcc-2.953\gcc\p\test>gpc y2k.pas -o y2k.exe --autobuild -D__BP_UNPO RTABLE_ROUTINES__ c:/djgpp/lib/gcc-lib/djgpp/2.953/libgpc.a(file.o)(.text+0x49d):file.c: undefined reference to `lstat' c:/djgpp/lib/gcc-lib/djgpp/2.953/libgpc.a(file.o)(.text+0x18e2):file.c: undefine d reference to `llseek' c:/djgpp/lib/gcc-lib/djgpp/2.953/libgpc.a(file.o)(.text+0x266b):file.c: undefine d reference to `llseek' c:/djgpp/lib/gcc-lib/djgpp/2.953/libgpc.a(file.o)(.text+0x26a9):file.c: undefine d reference to `llseek' c:/djgpp/lib/gcc-lib/djgpp/2.953/libgpc.a(file.o)(.text+0x26e8):file.c: undefine d reference to `llseek' c:/djgpp/lib/gcc-lib/djgpp/2.953/libgpc.a(file.o)(.text+0x2802):file.c: undefine d reference to `llseek' collect2: ld returned 1 exit status
Only with this test program?
I have not yet checked others, I was thinking to this y2k problem.
This would seem quite strange. The
routines referenced by file.o in libgpc.a don't depend on the program being compiled, and file.o is used in any GPC program, so if there are really undefined references, they should occur with any program.
Oh wait... this was a GPC binary built by Andris, right? Maybe he's used a newer DJGPP version which does have these functions, while yours (and mine) doesn't. This could explain the problem. (This should be reflected in the settings rts-config.inc in this binary.)
I don't follow DJGPP releases too closely, so I don't know. If it's a new official DJGPP release, it just means that this GPC binary requires that release. Otherwise, if it's a DJGPP developer version, a public GPC binary should probably not be built against it...
Possible. I used as native compiler the simtelnet's gcc2953b.zip (the second one, updated recently) and bnu210b (andris seems to use previous bnu according to the CFLAGS options in djbuils1.sh, but I see no library in it).
Maurice