devenv.exe does not exit from a command line build if project uses Intel C Compiler

devenv.exe does not exit from a command line build if project uses Intel C Compiler

We have recently come across an issue for which we need help with . We use intel C compiler and we have automated all our builds. automated scripts use the approach described here: http://software.intel.com/sites/products/documentation/doclib/stdxe/2013/composerxe/compiler/cpp-win/index.htm#GUID-8BC0A95C-99A5-4981-A02D-19CD6985E05B.htm

This has worked fine for last 4 years without any issue. 
Very recently we have started facing a problem which looks like a bug. The main issue is that when we follow this article and make a command line build the build completes but devenv.exe never exits. It appears that this bug is caused by a recent microsoft update. The same works fine if we set the project to use ms compiler in place of intel compiler. So it is difficult to prove if it is an intel or ms issue. 

We have reproduced the issue on two different machines (win7 x64, win8 x64) with a one line "hello world" project in VS2008.

This used to work fine untill couple of weeks ago.  Has any one else faced this issue ? 

Any tips on how to debug the issue will help

25 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

>>This used to work fine untill couple of weeks ago. Has any one else faced this issue ?

Try to re-construct a chain of events regarding All updates for Windows and Visual Studios. About 2-3 weeks ago I checked Microsoft Updates and I have Not seen any updates for Visual Studio 2008 Professional Edition.

>>Any tips on how to debug the issue will help

Please also report that issue with Microsoft and try Not to mention Intel C++ compiler since Microsoft could bounce you. If this is a problem with Intel C++ compiler ( let's assume it / Not proven ) then more technical details or a reproducer are needed.

>>...We have reproduced the issue on two different machines (win7 x64, win8 x64) with a one line "hello world" project in VS2008.

Please upload the project. Thanks in advance.

Not sure what to report to MS... it works as expected with ms compiler (vcproj). Only if I switch to use Intel C Compiler it has the issue. 

I'll attach the sample project.. which just a new project created using wizard. Will it help to have a remote console to a machine where the issue is reproducable

Attached is a project which shows the issue: Following waits forever even though the build is completed

C:\Users\Developer\Documents\Visual Studio 2008\Projects\helloW>devenv helloW.sln /rebuild release

Microsoft (R) Visual Studio Version 9.0.30729.1.
Copyright (C) Microsoft Corp. All rights reserved.
1>------ Rebuild All started: Project: helloW, Configuration: Release Win32 ----
--
1>Deleting intermediate files and output files for project 'helloW', configurati
on 'Release|Win32'.
1>Compiling with Intel(R) C++ 11.1.065 [IA-32]... (Intel C++ Environment)
1>stdafx.cpp
1>helloW.cpp
1>Linking... (Intel C++ Environment)
1>xilink: executing 'link'
1>Embedding manifest... (Microsoft VC++ Environment)
1>Build log was saved at "file://C:\Users\Developer\Documents\Visual Studio 2008
\Projects\helloW\helloW\Release\BuildLog.htm"
1>helloW - 0 error(s), 0 warning(s)
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

Now open the project and change it to use Visual C++ compiler and the same command line works fine... it exits as expected

Attachments: 

AttachmentSize
Downloadapplication/zip hellow.zip356.15 KB

I'll take a look and post results of my investigation / verification.

>>...Attached is a project which shows the issue: Following waits forever even though the build is completed...

I'll take a look and post results of my investigation / verification.

This is simply to inform you that I could not reproduce the problem and I did not have any problems with Devenv.exe. Here are outputs with Visual Studio 2008 Professional Edition:

[ 32-bit Debug Configuration ]

------ Build started: Project: helloW, Configuration: Debug Win32 ------
Compiling with Intel(R) C++ Compiler XE 13.1.0.149 [IA-32]... (Intel C++ Environment)
stdafx.cpp
helloW.cpp
Compiling manifest to resources... (Microsoft VC++ Environment)
Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
Copyright (C) Microsoft Corporation. All rights reserved.
Linking... (Intel C++ Environment)
xilink: executing 'link'
Embedding manifest... (Microsoft VC++ Environment)
Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
Copyright (C) Microsoft Corporation. All rights reserved.
xilink: executing 'link'
helloW - 0 error(s), 0 warning(s), 0 remark(s)
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

[ 32-bit Release Configuration ]

------ Build started: Project: helloW, Configuration: Release Win32 ------
Compiling with Intel(R) C++ Compiler XE 13.1.0.149 [IA-32]... (Intel C++ Environment)
stdafx.cpp
helloW.cpp
Linking... (Intel C++ Environment)
xilink: executing 'link'
Embedding manifest... (Microsoft VC++ Environment)
helloW - 0 error(s), 0 warning(s), 0 remark(s)
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

>>1>Deleting intermediate files and output files for project 'helloW', configurati
>>on 'Release|Win32'.
>>1>Compiling with Intel(R) C++ 11.1.065 [IA-32]... (Intel C++ Environment)

I completed a verification with:

Intel(R) C++ Compiler XE for applications running on IA-32, Version 12.1.7.371 Build 20120928

on a 32-bit Windows XP with VS 2005 Professional Edition, VS 2008 Express Edition and VS 2010 Express Edition, and I could not reproduce the problem.

Unfortunately, I won't be able to complete verifications with version 11.1.065 of Intel C++ compiler.

BTW, this issue can not be reproduced on another win7 x64 which has not taken any windows updates since december (last 6 months). It seems like even a vanilla windows 8 machine shows this issue. 

I am now trying to install intel c++ studio 2013 update 3 to see if that works any better on windows 8. will report back once I have the result

This seems to work fine with  intel c++ studio 2013 update3 . devenv.exe exits right after the build is complete... 

It will be a fairly costly work arround for us to migrate all projects to studio 2013. I wonder if there is a way to get a patch on ICL 11.0.65 ?

>>...It will be a fairly costly work arround for us to migrate all projects to studio 2013.

It depends on a complexity of your projects. My statistics is:

- In 2012 an initial port of some software to support Intel C++ compiler version 12 was completed in about 2 weeks plus stabilization for about 4 weeks
- In 2013 support for Intel C++ compiler version 13 was completed in a couple of minutes ( No issues at all ) plus testing for a couple of weeks
- In 2013 support ( downgrade ) for Intel C++ compiler version 8.1 ( Update 038 ) was completed in about 1 week ( one issue with macros detected )

>>I wonder if there is a way to get a patch on ICL 11.0.65?

As far as I know that version is No Longer supported.

As I've mentioned I had some issues with macros when the software was downgraded for Intel C++ compiler version 8.1. I found a workaround and it took about 4 days.

Your options are as follows:

- Some workaround
- Upgrade to a latest version of Intel C++ compiler ( version 12, or version 13, or version 14 as soon as it is released )

How did you launch the command window that you use to run your script?

The reason I ask is in windows a command shell has a property to enable/disable close on exit. Perhaps this is causing the issue.

Jim Dempsey

command prompt is the regular "Visual Studio 2008 Command Prompt"and as I noted above thats not an issue:

it works in compiler 13.. does not work in compiler 11. it works on machines with latest windows updates not yet applied. 

I'll have to upgrade almost 10 different projects. In most cases testing is automated so I am hoping we wont have late surprizes. 

As a hack work around, in your script files where you have:

devenv helloW.sln /rebuild release

use

start devenv helloW.sln /rebuild release

If you need to wait until the compilation is complete, then to your solution add an after build step that creates a file (DONE.TXT)
del done.txt
start devenv helloW.sln /rebuild release
:wait_release
if not exist done.txt goto wait_release

Some hack like that.

Jim Dempsey

I'm wondering if "devenv /setup" would help. did you try?

Sergey is right that we no longer support the 11.x version. Please upgrade to the newer compiler. Or use Jim's work-around.

Jennifer

Hi,

Could you try building your project with Intel IDE + MSVC++ compiler? To do that open your solution in VS, open project properties for helloW and set General-->Compiler and Environment Settings property to "Microsoft Visual C++ Compiler (cl.exe)" for Release configuration. Then run your devenv command from the command prompt. What is the result? This check is to find what component (Intel compiler or IDE) has a bug. If this scenario works fine then the problem is in the compiler.

I couldn't reproduce the issue with IDE 11.1. Unfortunately I had to use 12.1 compiler since 11.1 is unavailable.

Thanks, Vadim.

Vadim,

I have already documented that this works fine if I switch the project to MSVC compiler. 

There are no issues in using Intel Compiler via IDE GUI. the reported issue only shows up during command line build... and it works fine on another machine on which windows updates have been disabled for last 6 months.

>>...it works fine on another machine on which windows updates have been disabled for last 6 months...

During that period of time Microsoft released at least 50, if Not more, updates, security patches, etc. I don't think it will be possible to resolve that issue without updating your not-up-to-date computer. If you try to update it as 'One-Update-At-A-Time' with verification if Devenv.exe started working than you will be able to identify a root cause of the problem.

While I agree to Sergey's suggestion... It is the only build server left where we are able to do automated builds. I'll make a clone of that server to try one-patch-at-a-time approach. 

Thanks for all the advice

Also, take a look at VSKnownIssues.htm in a folder where your VS is installed.

Please let us know if the problem is resolved because it is really unusual. Thanks in advance.

 I figured it out finally. The blame goes to Internet explorer 10. If I install that update.. this issue surfaces. I uninstalled IE 10 and my test passes.Who  would draw a dotted line between devenv, ICL 11, command line builds and IE10.  Also note that this issue is there on win8 per default as it comes with IE 10 pre-installed. I'll see if it is possible to get rid of it. Thanks for every one who tried to help. 

The same resolution does not work for windows 8!

I disabled Internet explorer 10 but the issue continued on windows 8. Looks like the fix is different for win8.

Thanks for the update.

>>...Who would draw a dotted line between devenv, ICL 11, command line builds and IE10...

For 100% there are .NET components for marked items.

>> I figured it out finally. The blame goes to Internet explorer 10. If I install that update.. this issue surfaces. I uninstalled IE 10 and my test passes.Who  would draw a dotted line between devenv, ICL 11, command line builds and IE10.

This beggs the question: "Is a cmd window run as a facsimily command window within IE 10?"

Jim Dempsey

Leave a Comment

Please sign in to add a comment. Not a member? Join today