[Scons-users] Intermiddent build error on Windows - cl : Command line error D8022 : cannot open 'c:\users\admini~1\appdata\local\temp\tmpekylod.lnk'

Shane Gannon sgannon200 at gmail.com
Tue Sep 6 14:43:54 EDT 2016


Thanks William

I forgot to mention something. I also tested the build with SCons 2.3.6
(the 1st version of SCons with support for Visual Studio 2015). Noticed the
same error there.

On Tue, Sep 6, 2016 at 6:55 PM, William Blevins <wblevins001 at gmail.com>
wrote:

> Shane,
>
> There have been several recent inquiries into Windows file errors lately.
> From the data we currently have, this appears to be Windows specific and
> may require wrapping all the python file handling with windows32 API calls.
>
> Some of the others can give you more specifics.
>
> V/R,
> William
>
> On Tue, Sep 6, 2016 at 12:59 PM, Shane Gannon <sgannon200 at gmail.com>
> wrote:
>
>> Hi all
>>
>> I'm in the process of upgrading a Windows build machine. It's tool set is
>> moving to
>>
>>    - Visual Studio 2015 Update 3
>>    - scons 2.5.0
>>    - msbuild 14.0.25420.1
>>
>> from
>>
>>    - Visual Studio 2013 Update 4
>>    - scons 2.3.4
>>    - msbuild 12.0.31101
>>
>> But I'm getting an unexpected error.
>>
>> *cl : Command line error D8022 : cannot open
>> 'c:\users\admini~1\appdata\local\temp\tmpekylod.lnk'*
>>
>> This can occur once or multiple times in the first clean build. i.e. With
>> each occurence for a different file name. But if I then run a rebuild the
>> problem resolves itself.
>>
>> The .lnk file seems to be SCons specific. It's created in the temp folder
>> and contains something like
>>
>> */nologo /DEBUG /dynamicbase /fixed:no /OPT:REF /OPT:ICF -ignore:4042
>> -ignore:4042 -ignore:4099 /nologo /DEBUG /dynamicbase /fixed:no /OPT:REF
>> /OPT:ICF -ignore:4042 /dll /out:mylibrary.dll .......*
>>
>> i.e. The command to execute.
>>
>> On Windows *cl* eats this up with
>>
>> *cl @c:\users\admini~1\appdata\local\temp\tmpekylod.lnk*
>>
>> and executes with the parameters found in the .lnk file.
>>
>> AFAIK this behaviour has existed in SCons since version 0.9.
>>
>> See
>>
>> http://www.scons.org/CHANGES.txt
>>
>> *RELEASE 0.90 - Wed, 25 Jun 2003 14:24:52 -0500*
>>
>> *  - Use '.lnk' as the suffix on the temporary file for linking long
>>     command lines (necessary for the Phar Lap linkloc linker).*
>>
>> But, for some reason reason, *some* .lnk files are not generated in time for me. Hence the build fails.
>>
>> Is this a known issue? Has it been introduced since scons 2.3.4? Is there any work around?
>>
>> I should mention that my builder
>>
>>
>>    - Is a Windows 10 machine
>>    - Has 20 cpu cores and runs scons -j 20
>>    - Has 25Gb of RAM
>>
>> There may be a parallization problem here. But it is not an issue for the current build (which also uses -j 20). I experimented with using -j 10 but the problem persisted.
>>
>> I also choose to build only a sub-set of the projects. i.e. I excluded the tests. This allowed the build to pass.
>>
>> Any thoughts/suggestions?
>>
>> Regards
>>
>> Shane
>>
>>
>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>
>>
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20160906/0221a4c6/attachment.html>


More information about the Scons-users mailing list