<转>boost 1.53 and STLPort build binary for windows

 
1、编译STLPort:
    1.1 、开始菜单运行vs2008的命令行工具
    1.2、进入E:\00.CODE.SDK\STLport-5.2.1\
    1.2、运行configure msvc9
    1.3、cd E:\00.CODE.SDK\STLport-5.2.1\build\lib
    1.4、nmake -f msvc.mak clean install
    1.5、完成
2、用C++标准库STLPort编译boost
    2.0、运行boost_1_53_0\bootstrap.bat编译出boost编译工具
    2.1、修改配置文件:boostXXX\tools\build\v2\user-config.jam中变量为如下内容
        ... ...
        # Configure specific msvc version (searched for in standard locations and PATH).
           using msvc : 9.0 ;
         ... ...
       #   Configure specifying location of STLPort headers. Libraries must be either        # not needed or available to the compiler by default.
        # using stlport : : E:/00.CODE.SDK/STLport-5.2.1/src ;
 
       # Configure specifying location of both headers and libraries explicitly.        using stlport : : E:/00.CODE.SDK/STLport-5.2.1/src:E:/00.源码与SDK/STLport-5.2.1/lib ;
        ... ... 
    2.2、编译目标位VS2008全部构建集的boost库:
        b2 --target=msvc9.0 --buildset=complete --stdlib=stlport
        若找不到lib文件,x方法一个:copy stlport库文件至“C:\Program Files\Microsoft Visual Studio 9.0\VC\lib”
3、使用:
   3.1、配置预处理器选项;_STLP_DEBUG;__STL_DEBUG
图片
附录:

5倀爀攀瀀愀爀攀 to Use a Boost Library Binary

If you want to use any of the separately-compiled Boost libraries, you'll need to acquire library binaries.

5.1Install Visual Studio Binaries

The installers supplied by BoostPro Computing will download and install pre-compiled binaries into thelib\subdirectory of the boost root, typicallyC:\ProgramFiles\boost\boost_1_53_0\lib\. If you installed all variants of theBoost.Regexbinary, you're done with this step. Otherwise, please run the installer again and install them now.

skip to the next step

5.2伀爀, Simplified Build From Source

If you wish to build from source with Visual C++, you can use a simple build procedure described in this section. Open the command prompt and change your current directory to the Boost root directory. Then, type the following commands:

bootstrap.\b2

The first command prepares the Boost.Build system for use. The second command invokes Boost.Build to build the separately-compiled Boost libraries. Please consult theBoost.Build documentationfor a list of allowed options.

5.3伀爀, Build Binaries From Source

If you're using an earlier version of Visual C++, or a compiler from another vendor, you'll need to useBoost.Buildto create your own binaries.

Boost.CMake

There is also an experimental CMake build for boost, supported and distributed separately. See theBoost.CMakewiki page for more information.

5.3.1Install Boost.Build

Boost.Buildis a text-based system for developing, testing, and installing software. First, you'll need to build and install it. To do this:

  1. Go to the directorytools\build\v2\.
  2. Runbootstrap.bat
  3. Runb2 install--prefix=PREFIXwherePREFIXis the directory where you want Boost.Build to be installed
  4. AddPREFIX\binto your PATH environment variable.

5.3.2Identify Your Toolset

First, find the toolset corresponding to your compiler in the following table (an up-to-date list is always availablein the Boost.Build documentation).

Note

If you previously chose a toolset for the purposes ofbuilding b2, you should assume it won't work and instead choose newly from the table below.

Toolset NameVendorNotes
accHewlett PackardOnly very recent versions are known to work well with Boost
borlandBorland 
comoComeau ComputingUsing this toolset may requireconfiguringanother toolset to act as its backend
darwinApple ComputerApple's version of the GCC toolchain with support for Darwin and MacOS X features such as frameworks.
gccThe Gnu ProjectIncludes support for Cygwin and MinGW compilers.
hp_cxxHewlett PackardTargeted at the Tru64 operating system.
intelIntel 
msvcMicrosoft 
sunSunOnly very recent versions are known to work well with Boost.
vacppIBMThe VisualAge C++ compiler.

If you have multiple versions of a particular compiler installed, you can append the version number to the toolset name, preceded by a hyphen, e.g.intel-9.0orborland-5.4.3.On Windows, append a version number even if you only have one version installed(unless you are using the msvc or gcc toolsets, which have special version detection code) orauto-linkingwill fail.

5.3.3匀攀氀攀挀琀 a Build Directory

Boost.Buildwill place all intermediate files it generates while building into thebuild directory. If your Boost root directory is writable, this step isn't strictly necessary: by default Boost.Build will create abin.v2/subdirectory for that purpose in your current working directory.

5.3.4Invokeb2

Change your current directory to the Boost root directory and invokeb2as follows:

b2  --build-dir= build-directory  toolset= toolset-name  --build-type=complete stage

For a complete description of these and other invocation options, please see theBoost.Build documentation.

For example, your session might look like this:4

C:\WINDOWS> cd  C:\Program Files\boost\ boost_1_53_0 C:\Program Files\boost\ boost_1_53_0> b2  ^More?  --build-dir="C:\Documents and Settings\dave\build-boost"  ^More?  --build-type=complete  msvc stage

Be sure to readthis noteabout the appearance of^,More?and quotation marks (") in that line.

The option “--build-type=complete” causes Boost.Build to build all supported variants of the libraries. For instructions on how to build only specific variants, please ask on theBoost.Build mailing list.

Building the specialstagetarget places Boost library binaries in thestage\lib\subdirectory of the Boost tree. To use a different directory pass the--stagedir=directoryoption tob2.

Note

b2is case-sensitive; it is important that all the parts shown inboldtype above be entirely lower-case.

For a description of other options you can pass when invokingb2, type:

b2 --help

In particular, to limit the amount of time spent building, you may be interested in:

  • reviewing the list of library names with--show-libraries
  • limiting which libraries get built with the--with-library-nameor--without-library-nameoptions
  • choosing a specific build variant by addingreleaseordebugto the command line.

Note

Boost.Build can produce a great deal of output, which can make it easy to miss problems. If you want to make sure everything is went well, you might redirect the output into a file by appending “>build.log2>&1” to your command line.

5.4Expected Build Output

During the process of building Boost libraries, you can expect to see some messages printed on the console. These may include

  • Notices about Boost library configuration—for example, the Regex library outputs a message about ICU when built without Unicode support, and the Python library may be skipped without error (but with a notice) if you don't have Python installed.

  • Messages from the build tool that report the number of targets that were built or skipped. Don't be surprised if those numbers don't make any sense to you; there are many targets per library.

  • Build action messages describing what the tool is doing, which look something like:

    toolset-name.c++ long/path/to/file/being/built
  • Compiler warnings.

5.5In Case of Build Errors

The only error messages you see when building Boost—if any—should be related to the IOStreams library's support of zip and bzip2 formats as describedhere. Install the relevant development packages for libz and libbz2 if you need those features. Other errors when building Boost libraries are cause for concern.

If it seems like the build system can't find your compiler and/or linker, consider setting up auser-config.jamfile as describedhere. If that isn't your problem or theuser-config.jamfile doesn't work for you, please address questions about configuring Boost for your compiler to theBoost.Build mailing list.

转载于:https://www.cnblogs.com/albertwang/p/3345992.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值