Community
Participate
Working Groups
Build Identifier: 20100917-0705 I installed Eclipse 3.6 (Helios) SR1 for C++ on Windows 2008 R2, installed the Perforce plugin for 3.6, and imported a Makefile-based project from Perforce. When I did a "Build Project" or "Clean", it triggered the appropriate make command using the correct Makefile, but when I attempted to cancel the task, "Cancel requested" was shown, but the make operation continued to run to completion and could not be canceled. (I was also using the Perforce plug-in, by the way.) When I installed Eclipse 3.5 (Galileo) SR2 for C++ (20100218-1602) in the exact same way, I had no problem canceling the same build tasks. Reproducible: Always Steps to Reproduce: 1. Run Eclipse 3.6 for C++ onto a Windows 2008 R2 system and import a project from Perforce that has a Makefile. It's possible all that matters here is that the project have an existing Makefile. 2. Build the project from Eclipse, which should trigger a "make" command, and the make output should be visible in the console window. 3. Attempt to cancel the task. The bug is that "Cancel requested" is displayed in the Progress window, but the task is never canceled and runs to completion. The Console window will continue to show output from the task. This was a fresh install for me and my first time using Eclipse CDT, so it's possible I misconfigured something; however, the workaround for me was to switch from 3.6 SR1 to 3.5 SR2 and to set it up the same way. The only other thing that I can add is that I briefly unchecked "Stop on first build error" (which changes the "make" commands to "make -k") and I did some Build operations. But I later checked that option, and even deleted and reinstalled my Eclipse 3.6 installation and workspace, and from then on it was checked by default. So this looks like a regression.
Which toolchin are you using? MinGW? Cygwin?
(In reply to comment #1) > Which toolchin are you using? MinGW? Cygwin? This project is built by calling GNU Make 3.81 on a Makefile target that, among other things, calls the Visual C++ compiler (cl.exe). I have "No ToolChain" specified for the "Current toolchain" under Properties -> C/C++ Build -> Tool Chain Editor -> Current toolchain I have "External builder" specified for the "Builder type" under Properties -> C/C++ Build -> Builder type
(In reply to comment #1) > Which toolchin are you using? MinGW? Cygwin? I am having this problem as well. Windows 7 with Cygwin and Make 3.80, with 6 parallel builds. It was a little glitchy in Helios, but it would work sometimes. Having just upgraded to Indigo, it seems 100% reproducible. It seems to kill one of the build processes, but the other 5 need to go to completion. This is a fairly critical bug, since there's no reasonable way of terminating a build.
If I had to guess, this is due to the spawner library not being loaded properly on x86-64. If it doesn't load, CDT will default to using java.lang.Process for running external processes such as builds, and when you terminate such a process, it does not kill the entire process tree, whereas with the spawner it does. Are you folks using 32-bit builds of Eclipse or 64-bit ones? And what is the bitness of your JVMs?
(In reply to comment #4) > If I had to guess, this is due to the spawner library not being loaded properly > on x86-64. If it doesn't load, CDT will default to using java.lang.Process for > running external processes such as builds, and when you terminate such a > process, it does not kill the entire process tree, whereas with the spawner it > does. > > Are you folks using 32-bit builds of Eclipse or 64-bit ones? And what is the > bitness of your JVMs? That could be it. I'm running Helios with 32 bit Java, and Indigo with 64 bit. I'll retest 32 bit Indigo.
(In reply to comment #5) > (In reply to comment #4) > > If I had to guess, this is due to the spawner library not being loaded properly > > on x86-64. If it doesn't load, CDT will default to using java.lang.Process for > > running external processes such as builds, and when you terminate such a > > process, it does not kill the entire process tree, whereas with the spawner it > > does. > > > > Are you folks using 32-bit builds of Eclipse or 64-bit ones? And what is the > > bitness of your JVMs? > > That could be it. I'm running Helios with 32 bit Java, and Indigo with 64 bit. > I'll retest 32 bit Indigo. That is indeed the problem (for me anyway). 32 bit Indigo seems to work fine.
Looks like this is because of the missing spawner library. *** This bug has been marked as a duplicate of bug 236330 ***