Estou compilando um programa que requer a biblioteca boost-thread-mt. Eu instalei o libboost-all-dev usando, sudo apt-get install libboost-all-dev
mas o compilador diz que não consegue encontrar a biblioteca boost-thread-mt. Esta biblioteca está em algum outro pacote? Por favor, me guie o que eu preciso instalar para isso.
8
libboost-thread-dev
instalou?-mt
bibliotecas no pacote principal do Boost. Veja também esta pergunta não resolvida.Respostas:
O
-mt
sufixo foi removido. As bibliotecas Boost instaladas são seguras para vários segmentos.Você pode compilar seu programa versus
libboost-thread
. Alterando a fonte para usar outras-mt
bibliotecas ou criando links simbólicoslibboost_thread.a
→libboost_thread-mt.a
. A mesma coisa se você precisar de bibliotecas compartilhadas.so
.fonte
AC_CHECK_LIB
check-target-builds
parece oferecer a mesma funcionalidade do autoconf para o boost.build.Se o seu projeto for usado
CMake
, a seguinte opção fornecida no módulo FindBoost deverá ser desativada:-DBoost_USE_MULTITHREADED=OFF
fonte
Este link está relacionado a esta pergunta.
Você também pode tentar compilar o impulso a partir da fonte, em vez de usar a versão apt-get.
Os argumentos
--layout
,threading
ebuild-type
vai ajudar.Portanto, tente este comando para instalar o boost, depois de
bootstrap.sh --prefix=/path/of/yours
:Então você receberá todas as
-mt
bibliotecas.fonte