Я компилирую программу, которая требует boost-thread-mt библиотеки. Я установил использование libboost-all-dev sudo apt-get install libboost-all-dev
но в компиляторе говорится, что он не может найти boost-thread-mt библиотеку. Эта библиотека в некотором другом пакете? Ведите меня, что я должен установить для этого.
-mt
суффикс был удален. Установленные библиотеки Boost являются безопасной многопоточностью.
Можно скомпилировать программу по сравнению с libboost-thread
. Любой путем изменения источника для использования нет -mt
освобождает или путем создания символьных ссылок libboost_thread.a
→libboost_thread-mt.a
. То же самое, если Вам нужно совместно использованный, освобождает .so
.
Если Ваш проект использует CMake
, этот после переключателя, обеспеченного в модуле FindBoost, имеет к выключенному: -DBoost_USE_MULTITHREADED=OFF
Эта ссылка связана с этим вопросом.
Можно также попытаться компилировать повышение из источника вместо того, чтобы использовать Кв. - получают версию.
Аргументы --layout
, threading
и build-type
поможет.
--layout=<layout> Determines whether to choose library names
and header locations such that multiple
versions of Boost or multiple compilers can
be used on the same system.
versioned - Names of boost binaries
include the Boost version number, name and
version of the compiler and encoded build
properties. Boost headers are installed in a
subdirectory of <HDRDIR> whose name contains
the Boost version number.
tagged -- Names of boost binaries include the
encoded build properties such as variant and
threading, but do not including compiler name
and version, or Boost version. This option is
useful if you build several variants of Boost,
using the same compiler.
system - Binaries names do not include the
Boost version number or the name and version
number of the compiler. Boost headers are
installed directly into <HDRDIR>. This option
is intended for system integrators who are
building distribution packages.
The default value is 'versioned' on Windows, and
'system' on Unix.
Так, попробуйте эту команду для установки повышения, после bootstrap.sh --prefix=/path/of/yours
:
./b2 install -j16 threading=multi --layout=tagged --build-type=complete
Затем Вы доберетесь весь -mt
библиотеки.