Boost logo

Boost Users :

Subject: Re: [Boost-users] [MultiArray, Thread] Setting the _ITERATOR_DEBUG_LEVEL
From: Jürgen Hunold (juergen.hunold_at_[hidden])
Date: 2010-08-23 14:56:41


On Monday, 23. August 2010 18:20:39 you wrote:
> It's probably well-known by now that multi_array has a problem with
> Visual Studio 2010: due to the way it identifies its iterators, you get
> errors unless you set the _ITERATOR_DEBUG_LEVEL preprocessor symbol to
> 0. First of all, when can we expect a fix for this (or is there one
> already)?

Issue number ? Patch ? Did you try 1.44 ?

> Secondly, even if I manually set the _ITERATOR_DEBUG_LEVEL to 0 in
> Debug configuration (that's the default in Release), I am unable to
> build because when I try to link in the Boost Thread library, I get
> 2>libboost_thread-vc100-mt-gd-1_43.lib(thread.obj) : error LNK2038:
> mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '2' doesn't match
> value '0' in test.obj
> This indicates that I need to build Boost Thread with that variable set
> to 0 as well, even in the debug mode;

use `bjam debug define="_ITERATOR_DEBUG_LEVEL=2"` to get this. A better
solution is to add this to your site-config.jam or user-config.jam. See the docs
for how to do it.

> or else I need to somehow get the Release version of the library linked in
> instead.

Disable auto-linking and link manually. Adding the define BOOST_THREAD_NO_LIB
to your command line should do the trick.

Hope this helps.



* Dipl.-Math. Jürgen Hunold       ! Ingenieurgesellschaft für 
* voice: ++49 511 262926 57       ! Verkehrs- und Eisenbahnwesen mbH  
* fax  : ++49 511 262926 99       ! Lister Straße 15
* juergen.hunold_at_[hidden]        !
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke       !

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at