C++ 配置:错误:未找到boost.filesystem库

C++ 配置:错误:未找到boost.filesystem库,c++,linux,ubuntu,boost,C++,Linux,Ubuntu,Boost,因此,我正在尝试安装ncmpcpp,第一步是运行sh autogen.sh脚本。我遇到了一些丢失的库,等等,但我已经能够安装它们,并一直升级到现在。我做了一些搜索并安装了一些我认为可以帮助修复它的东西,但没有用 sudo apt get安装libboost1.55-all-dev sudo-apt-get-install-libboost-system-dev sudo apt get安装libboost-system1.54-dev sudo apt get安装libboost1.54-dev

因此,我正在尝试安装ncmpcpp,第一步是运行
sh autogen.sh
脚本。我遇到了一些丢失的库,等等,但我已经能够安装它们,并一直升级到现在。我做了一些搜索并安装了一些我认为可以帮助修复它的东西,但没有用

sudo apt get安装libboost1.55-all-dev

sudo-apt-get-install-libboost-system-dev

sudo apt get安装libboost-system1.54-dev

sudo apt get安装libboost1.54-dev

sudo apt get安装libboost文件系统dev

sudo apt get安装libboost文件系统dev libboost线程dev

事实上,我对Boost或我缺少的东西了解不够,无法自己修复它

这就是问题的根源:

正在检查boost/filesystem.hpp。。。对

正在检查主输入-lboost\u文件系统-mt。。。没有

配置:错误:未找到boost.filesystem库

编辑:下面是config.log文件中“-lboost\u filesystem-mt”的周围几行

配置:15510:检查主输入-lboost_filesystem-mt

配置:15529:g++-o conftest-g-O2-std=c++0x conftest.cpp-lboost\u filesystem-mt>&5

/usr/bin/ld:找不到-lboost\u filesystem-mt

collect2:错误:ld返回了1个退出状态

配置:15529:$?=一,

配置:失败的程序是:

|/*confdefs.h*/


。。。然后继续描述confdefs.h文件。

configure.ac
中删除这些链接(“设置boost环境”部分):

很久以前,Boost库使用
-mt
后缀表示它们支持多线程。Debian/Ubuntu在这几年前就放弃了。也许其他发行版保留了它。Boost库的名称在任何情况下都不是非常标准化的,这就是为什么
configure
脚本经常尝试处理它们的原因,通常是以错误的方式

您可以删除这两行,也可以这样称呼它:

$ BOOST_LIB_SUFFIX="" ./autogen.sh

正确的修复方法是将脚本转换为使用来自的Boost宏。

为什么要同时安装Boost-1.55和Boost-1.54?无论如何,请在config.log中查找详细报告。在那里搜索单词“error”或
-lboost\u filesystem-mt
。如果使用
sudo apt get install libboost all dev
@n.m安装所有boost文件不是问题,因为第一个不起作用,所以我尝试了另一个。我将在组织中添加周围的行。问题。@prajmus做到了-没用。谢谢!现在遇到了其他错误,但这确实解决了我的问题。多莫·阿里加图!下一个错误可能是您需要libncursesw5 dev:)普通libncurses的检测似乎也坏了。
$ BOOST_LIB_SUFFIX="" ./autogen.sh