所以我试图通过这个 github 安装 ncmpcpp,第一步是运行 sh autogen.sh
脚本。我遇到了一些丢失的库等,但我已经能够安装它们并继续前进直到现在。我已经做了一些搜索并安装了一些我认为可以帮助修复它的东西,但无济于事。sudo apt-get install libboost1.55-all-dev
sudo apt-get install libboost-system-dev
sudo apt-get install libboost-system1.54-dev
sudo apt-get install libboost1.54-dev
sudo apt-get install libboost-filesystem-dev
sudo apt-get install libboost-filesystem-dev libboost-thread-dev
事实是我对 Boost 知之甚少,或者我自己缺少什么来修复它。
这是问题开始的地方:
编辑:这是 config.log 文件中“-lboost_filesystem-mt”的周围行。
...然后继续描述 confdefs.h 文件。
最佳答案
从 configure.ac
中删除这些链接(“设置 boost 环境”部分):
AS_IF([test -z "${BOOST_LIB_SUFFIX+x}"], [BOOST_LIB_SUFFIX=-mt])
AC_ARG_VAR([BOOST_LIB_SUFFIX], [Boost library name suffix [default=-mt]])
很久以前,Boost 库曾经有一个
-mt
后缀来表示它们是多线程感知的。 Debian/Ubuntu 几年前就被淘汰了。也许其他发行版保留了它。 Boost 库名称在任何情况下都从未非常标准化,这就是 configure
脚本经常尝试处理它们的原因,通常以破坏的方式处理。您可以删除这两行或像这样调用它:
$ BOOST_LIB_SUFFIX="" ./autogen.sh
正确的解决方法是将脚本转换为使用 the Autoconf Archive 中的 Boost 宏。
关于c++ - 配置找到的 : error: no boost. 文件系统库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25222741/