[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#894159: ICU transition: ICU version is part of the boost ABI



On 13/05/18 16:08, Adrian Bunk wrote:
> Control: reassign 898465 src:icu 60.1-1
> Control: retitle 898369 boost: ICU version used is part of the ABI
> Control: retitle 898465 ICU must not migrate to testing before the boost ABI breakage is resolved
> Control: affects 898369 libmapnik3.0 viking
> Control: block 898465 by 898369
> Control: block 894159 by 898369 898465
> 
> On Thu, May 10, 2018 at 06:06:08PM -0300, Thadeu Lima de Souza Cascardo wrote:
>> Source: boost1.62
>> Version: 1.62.0+dfsg-5+b2
>> Severity: serious
>>
>> After upgrading boost1.62 to 1.62.0+dfsg-5+b2, ncmpcpp does not start
>> anymore.
>>
>> $ ncmpcpp
>> ncmpcpp: symbol lookup error: ncmpcpp: undefined symbol: _ZNK5boost16re_detail_10620031icu_regex_traits_implementation12do_transformEPKiS3_PKN6icu_578CollatorE
>> ...
> 
> boost::re_detail_106200::icu_regex_traits_implementation::do_transform(int const*, int const*, icu_57::Collator const*) const
> 
> Yes, boost makes the ICU version it uses part of its ABI.
> 
> There is no obvious good way forward, the RC bug in ICU will ensure that 
> the breakage won't migrate to testing before this got sorted out.

boost1.62 should:
- bump the libicu-dev build-dependency to ensure it builds against icu 60
- add breaks against the rdeps that use the affected symbols

And we should transition to a newer boost at some point.

Cheers,
Emilio


Reply to: