Tool/software: TI C/C++ Compiler
Hi,
Occasionally, we see compilation failures that appear to be due to inaccessible or missing temporary files ("Error!: [E1000] Cannot open source file"). Our build (on Windows) is configured to run in parallel, so there may be numerous instances of cl6x all running at any given time. We have been observing this for a while (with at least two variants of the 7.3.x compiler), and have noted that it does not correlate to low disk space on the host machine. I am wondering if this is possibly related to contention over the temporary directory, between the various instances of cl6x, resulting in an occasional race condition where by one or more instances of cl6x effectively try to use the same temporary file. What mechanism does the compiler use to allocate a temporary file? Is it known to be atomic? Are there other things that might cause this behavior?
Here is a sample error:
C:\ti\ccsv5\tools\compiler\c6000_7.3.15\bin\cl6x.exe -pden -mv6400+ --abi=coffabi -mi10000 -qq -o3 -s -mw -eo=.obj -fr="C:\path\to\obj\dir" C:\path\to\file.cpp "C:\BuildAgent\temp\buildTmp\3841612", ERROR! : [E1000] Cannot open source file C:\BuildAgent\temp\buildTmp\3841612: No such file or directory
Thanks,
-Matthew