Hey again monks...
I've succesfully created a perl module, using perlxs that calls functions from a C lib, and it is working flawlessly on my machine with perl 5.8.0 and libc6 2.3.2.
However, when I move the library to one of the development machines and recompile it, it still runs, however I get wierd file access errors.
The C lib creates a log file successfully and writes to it. But then when the C lib tries to create some tmp files, it dies with an error of "Could not create file"
doing an strace gives the following :
open("/tmp/qas/qa000001.tmp", O_RDWR) = -1 ENOENT (No such file or dir
+ectory)
open("/tmp/qas/qa000001.tmp", O_RDWR|O_CREAT|O_TRUNC, 0664) = 5
close(5) = 0
rmdir("/tmp/qas/qa000001.tmp") = -1 ENOTDIR (Not a directory)
unlink("/tmp/qas/qa000001.tmp") = 0
Which I take to mean it created the file successfuly, then deleted it for some reason.
The /tmp/qas directory is writable by the user the perl script is run as.
The only things that I can see that have changed (relevant) are the perl version and the libc6 version.
Does anyone have any ideas that will stop me banging my head against a wall?