7

boost64 ビット システムで Visual Studio 2013 を使用して Windows 8.1 でビルドしようとしています。

b2 toolset="msvc" address-model=64 -s ZLIB_SOURCE=C:\H\M\zlib --build-type=complete stage

完全な出力は次のとおりです。

Performing configuration checks

    - symlinks supported       : no
    - junctions supported      : yes
    - hardlinks supported      : yes
    - arm                      : no
    - mips1                    : no
    - power                    : no
    - sparc                    : no
    - x86                      : yes
    - has_icu builds           : no
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
    - iconv (libc)             : no
    - iconv (separate)         : no
    - icu                      : no
    - icu (lib64)              : no
    - message-compiler         : yes
    - compiler-supports-ssse3  : yes
    - compiler-supports-avx2   : yes
    - gcc visibility           : no
    - long double support      : yes
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
error: Name clash for '<pstage\lib>boost_system-vc120-mt-1_58.dll'
error:
error: Tried to build the target twice, with property sets having
error: these incompabile properties:
error:
error:     -  <warnings>all
error:     -  <architecture>x86 <warnings>on
error:
error: Please make sure to have consistent requirements for these
error: properties everywhere in your project, especially for install
error: targets.

それは何を意味し、どのように解決するのですか?

ありがとう

4

5 に答える 5

9

--without-context --without-coroutine を b2 オプションに追加するとビルドされます

于 2015-01-11T09:29:45.607 に答える
5

Boost 1.58 ベータ版のリリース ノートから:

重要な注意点

ビルド スクリプトにバグがあります。アドレス モードとアーキテクチャを b2 に指定する必要があります。私が使用した:

./b2 address-model=64 architecture=x86

これをテストします。

これらのフラグをコマンドに追加すると、およびライブラリb2を除外せずに問題を解決できます (たとえば、私のようにこれらのライブラリを実際に使用する場合に便利です)。contextcoroutine

当然、32 ビット ライブラリを構築している場合は、address-model=32代わりに追加する必要があります。

于 2015-04-04T09:36:20.673 に答える