Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Installation and compatibility

Boost , Chapter 1. Boost.Log v2 , Chapter 1. Boost.Log v2

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Библиотека должна строиться и работать с достаточно совместимым компилятором. Библиотека успешно построена и протестирована на следующих платформах:

  • Windows XP, Windows Vista, Windows 7. MSVC 8.0 SP1, MSVC 9.0 и более новые.
  • Linux. GCC 4.5 и новее. Старые версии также могут работать, но они не были протестированы.
  • Linux. Intel C++ 13.1.0.146 Build 20130121
  • Linux. Кланг 3.2 и новее.

Следующие компиляторы/платформы не поддерживаются и, скорее всего, не будут компилировать библиотеку:

  • Компиляторы C++11 со стандартными библиотеками, отличными от C++11 (например, Clang с libstdc++ из GCC 4.2). Пожалуйста, используйте стандартную библиотеку C++11 в режиме C++11.
  • MSVC 8.0 (без SP1) и старше.
  • GCC 4.2 и старше.
  • Borland C++ 5.5.1 (бесплатная версия). Новые версии могут работать или не работать.
  • Solaris Studio 12.3 и старше.
  • Windows 9x, ME, NT4, 2000 и старше не поддерживаются.

Повышаю. Лог должен быть совместим со всеми аппаратными архитектурами, поддерживаемыми Boost. Однако в случае 32-битной архитектуры x86 библиотеке требуется процессор класса i586 для работы.

Notes for GCC users

Версии GCC с 4.5 поддерживают оптимизацию времени соединения (LTO), когда большинство оптимизаций и генерация двоичного кода происходит на стадии соединения. Это позволяет выполнять более продвинутые оптимизации и создавать более быстрый код. К сожалению, он не очень хорошо работает с проектами, содержащими исходные файлы, которые должны быть скомпилированы с различными вариантами компилятора. Повышаю. Лог является одним из таких проектов, некоторые части его источников содержат оптимизации для современных ЦП и не будут работать на старых ЦП. Включение LTO для повышения. Лог будет создавать двоичные файлы, несовместимые со старыми процессорами (баг GCC), что, вероятно, приведет к сбоям во времени выполнения. Эта проблема исправлена в GCC 5.1 и более новой. По этой причине LTO не поддерживается в Boost. Зарегистрируйтесь в GCC версии 5.1.

Существует ошибка GCC, которая может вызвать сбои компиляции при использовании аргумента командной строки<-march=native>. Рекомендуется избегать использования аргумента<-march=native>(или свойства<instruction-set=native>bjam) и вместо этого явно указывать целевой процессор (например,<instruction-set=sandy-bridge>).

Notes for MinGW, Cygwin and Visual Studio Express Edition users

Для компиляции библиотеки с этими составителями необходима специальная подготовка. Во-первых, в случае MinGW или Cygwin убедитесь, что вы установили последнюю версию GCC. Библиотека, скорее всего, не будет компилироваться с GCC 3.x.

Во-вторых, в какой-то момент библиотеке потребуется инструмент компилятора сообщений<mc.exe>, который недоступен в MinGW, Cygwin и некоторых версиях MSVC Express Edition. Как правило, скрипты сборки библиотеки автоматически обнаруживают, присутствует ли компилятор сообщений в системе, и отключают часть библиотеки, связанную с журналом событий, если это не так. Если требуется поддержка журнала событий, и она не найдена в системе, у вас есть три варианта решения проблемы. Рекомендуемым решением является получение оригинала<mc.exe>. Этот инструмент доступен в Windows SDK, который можно бесплатно скачать с сайта Microsoft (например,здесь). Также этот инструмент должен быть доступен в Visual Studio 2010 Express Edition. Во время компиляции<mc.exe>должен быть доступен через один из каталогов в переменной среды<PATH>.

Другой способ — попытаться использовать инструмент<windmc.exe>, распределенный с MinGW и Cygwin, который является аналогом оригинала<mc.exe>. Для того, чтобы сделать это, вам нужно будет исправить Boost. Постройте файлы (в частности, файл<tools/build/tools/mc.jam>), как описано вэтомбилете. После этого вы сможете указать<mc-compiler=windmc>опцию для создания библиотеки.

В случае, если обнаружение компилятора сообщений по какой-либо причине не удается, вы можете явно отключить поддержку бэкэнда журнала событий, определив макрос конфигурации<BOOST_LOG_WITHOUT_EVENT_LOG>при создании библиотеки. Это устранит необходимость в компиляторе сообщений. См.этот разделдля большего количества вариантов конфигурации.

Пользователи MinGW в Windows XP могут быть затронуты ошибкойв msvcrt. dll, который связан с операционной системой. Баг проявляется как сбой, в то время как библиотека форматирует записи журнала. Эта проблема не является специфической для Boost. Журнал и может также отображаться в различных контекстах, связанных с управлением локальными и IO-потоками.

Additional notes for Cygwin users

Поддержка Cygwin является предварительной. Версия GCC по умолчанию, доступная в Cygwin (4.5.3 на момент написания этой статьи), не может компилировать библиотеку из-за ошибок компилятора. Вам придется построить новый GCC из источников. Даже тогда немного подъём. Функциональность журнала недоступна. В частности, syslog backend на основе сокетов не поддерживается, так как он основан наBoost.ASIO, который не компилируется на этой платформе. Тем не менее, поддержка родного сислога все еще существует.


PrevUpHomeNext

Статья Installation and compatibility раздела Chapter 1. Boost.Log v2 Chapter 1. Boost.Log v2 может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Chapter 1. Boost.Log v2 ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 19:06:49/0.0075469017028809/0