Boost logo

Boost-Build :

From: Brian Ravnsgaard Riis (brian_at_[hidden])
Date: 2005-04-23 13:04:26

Hello list.

I've been having trouble using mingw with BBv2 for some time, due to a
failure to invoke action gcc.archive. I got our old friend "spawn: No
such file or directory", which tells next to nothing about what really
went wrong.

Investigation showed that since gcc.archive is a two-line action (remove
then archive) it choked on that somehow. Commenting out either or both
lines made no difference, i.e. still no successful run. *Deleting* one
of the lines, however, solved the problem, except, of course, that both
lines are there for a reason. The problem turned out to be located
somewhere else.

In the top of gcc.jam a little trick is present to circumvent trouble
with command line length on NT. It sets the JAMSHELL variable to '%'.
This was why it choked. I have replaced this with

"JAMSHELL = cmd.exe /C %"

Now everything works. I've attached the patch, and would like to hear if
it generally works on others' systems as well. I assume people have not
generally had this problem before or I would have heard about it here.
So please, even if the old solution worked for you, please test if this
new JAMSHELL is acceptable. It might solve others' problems along the way.

/Brian Riis
 --------------070506060908010800030801 Content-Type: text/plain;
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
--- gcc2.jam	Sat Apr 23 19:52:51 2005
+++ gcc.jam	Sat Apr 23 19:53:26 2005
@@ -60,7 +60,7 @@
# This causes single-line command invocation to not go through
# .bat files, thus avoiding command-line length limitations
- JAMSHELL = % ; 
+ JAMSHELL = cmd.exe /C % ; 
generators.register-c-compiler gcc.compile.c++ : CPP : OBJ : <toolset>gcc ;

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at