Boost logo

Boost Users :

From: Rush Manbert (rush_at_[hidden])
Date: 2006-04-25 15:54:52


Hi,

This is a repost and is directed to Robert Ramey, since the
serialization library is his baby and I assume he wrote the build
configuration code for it. I got no reply the first time, and I really
need to be able to build this way.

I am having problems building Boost 1.33.1 under Windows XP for the
vc-8_0 toolset. My problems seem to come from a bug in the build of the
serialization library.

The attached zip file contains information from 2 builds. One of them
succeeds and the other fails. The difference between them is that the
failed build includes "--layout=system" on the bjam command line, while
the successful build does not. In both cases, the build is run by a
script that makes sure the build location and the installation location
are cleaned up before the build starts.

In the zip file are the following files:
  * failedBoostBuild.log contains all of the output generated by bjam for
    the failed build.
  * failedConsoleTranscript.txt is the console output from the build
    script. It shows the bjam command line for the failed build.
  * failedInstalledLibList.txt is a "dir" listing of the library
    installation directory, after the failed build completed.

  * goodBoostBuild.log, goodConsoleTranscript.txt, and
    goodInstalledLibList.txt are the equivalents to the above for
    the successful build.

I believe that there is an error shown in failedBoostBuild.log at line
3000. The line says:

   "LINK : fatal error LNK1104: cannot open file
'boost_serialization-vc80-mt-gd-1_33_1.lib'"

and I believe that the error is that the library file name includes the
toolset name and the Boost version number. Since I specified
--layout=system, neither of these are included in the generated library
names.

There is a similar error at line 3058.

If you compare the failedInstalledLibList.txt and
goodInstalledLibList.txt, you can see that none of the
boost_wserialization libraries are present in the failed case. I am
guessing that they represent the four failed targets reported by bjam at
the end of the build.

I want to use the --layout=system naming conventions and do internal
releases of the Boost libraries to our development environment. I have
already done this successfully under Mac OSX, and I expected it to work
the same way under Windows.

If my conclusion that there is a build bug is correct, is there some
workaround possible to make the build succeed? (I looked at the
serialization jamfile and came away unenlightened. :-) Is there some
other explanation?

Thanks,
Rush




Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net