C++ 使用boost文件系统生成时出现问题

C++ 使用boost文件系统生成时出现问题,c++,boost,C++,Boost,我想使用boost文件系统函数,我搜索了我的构建日志并找到以下几行: 1> 正在搜索C:\local\boost\u 1\u 55\u 0\stage\lib\libboost\u filesystem-vc90-mt-1\u 55.lib: 1> 正在搜索C:\local\boost\u 1\u 55\u 0\stage\lib\libboost\u system-vc90-mt-1\u 55.lib: 1> 正在搜索C:\local\boost\u 1\u 55\u 0\stage\lib\

我想使用boost文件系统函数,我搜索了我的构建日志并找到以下几行:


1> 正在搜索C:\local\boost\u 1\u 55\u 0\stage\lib\libboost\u filesystem-vc90-mt-1\u 55.lib:
1> 正在搜索C:\local\boost\u 1\u 55\u 0\stage\lib\libboost\u system-vc90-mt-1\u 55.lib:
1> 正在搜索C:\local\boost\u 1\u 55\u 0\stage\lib\boost\u system-vc90-1\u 55.lib:

所以它确实找到了LIB

我想说的是:

proc1.obj:错误LNK2001:未解析的外部符号“unsigned uu int64 uu cdecl boost::filesystem::detail::file_size(类boost::filesystem::path const&,类boost::system::error_code*)”(?文件_size@detail@filesystem@boost@@嗯_KAEBVpath@23@PEAVerror_code@system@3@@Z)

如何解决这个问题

我的测试代码:

#include <stdlib.h>
#include <string>
#include <iostream>
#include <boost/filesystem.hpp>
#include <boost/foreach.hpp> 

using namespace std;
namespace fs = boost::filesystem;  


int main()
{
    string filepath( "H:\\DataSets\\xxx" );
    int a = fs::file_size(filepath.c_str());

}
#包括
#包括
#包括
#包括
#包括
使用名称空间std;
名称空间fs=boost::filesystem;
int main()
{
字符串文件路径(“H:\\DataSets\\xxx”);
inta=fs::文件大小(filepath.c_str());
}

正如您在评论中所说,您只链接到了
boost::filesystem
boost::filesystem
取决于
boost::system
,因此您还必须链接到
boost::system

确切链接哪些lib?C:\local\boost\u 1\u 55\u 0\stage\lib\libboost\u filesystem-vc90-mt-1\u 55.libI放置C:\local\boost\u 1\u 55\u 0\stage\lib\libboost\u system-vc90-mt-1\u 55.lib并进行搜索C:\local\boost\u 1\u 55\u 0\stage\lib\boost\u system-vc90-1\u 55.lib到属性>链接器>输入>附加依赖项,如日志中所示。