обновление буст-библиотек для Rad Studio - PullRequest
1 голос
/ 15 марта 2011

Мне нужно обновить буст-библиотеки до версии 1_46, в настоящее время Rad Studio XE / 2010 имеет версию 1_39.Когда я пытаюсь просто перезаписать boost, включить компиляцию пути не удается с различными ошибками из Borland VCL.Когда я пытаюсь добавить новые библиотеки повышения в другом пути, сохраняю предыдущую версию, это также не удается с ошибками условия компиляции при создании классов std :: *.Мне нужна поддержка shared_memory_manager, которая доступна только в новых версиях буста.Существуют ли другие способы обновления библиотек наддува или использования общей памяти, которая будет доступна тем же процессам?

Ошибки компиляции при компиляции только с новой версией наддува:

[Ошибка BCC32]bad_weak_ptr.hpp (44): E2113 Виртуальная функция 'bad_weak_ptr :: what () const throw ()' конфликтует с базовым классом 'std :: exception'

[Ошибка BCC32] xlocale (953): E2228 Слишком многосообщения об ошибках или предупреждения

1 Ответ

2 голосов
/ 01 апреля 2011

В бусте есть десятки мест, которые проверяют версию компилятора, чтобы определить, нужны ли определенные обходные пути. (проверяя как __CODEGEARC__, так и __BORLANDC__) Вам необходимо протестировать каждый из них и при необходимости обновить номер версии. Также в файле config / compiler / codegear.hpp есть ряд определений (обычно BOOST_HAS_ * и BOOST_NO_ *), которые также необходимо включать / выключать для разных версий компилятора.

Это очень сложный и длительный процесс.

...