C ++ /升压文件系统 - 为“_MSC_VER'检测不匹配:值'1700'不匹配值'1600' [英] C++ / Boost Filesystem - mismatch detected for '_MSC_VER': value '1700' doesn't match value '1600'

查看:724
本文介绍了C ++ /升压文件系统 - 为“_MSC_VER'检测不匹配:值'1700'不匹配值'1600'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是新的C ++和Boost。我在做一个简单的小程序,努力学习提高文件系统库。我按照指示建立了Boost库。而现在,当我尝试编译这个简单的code我得到这些错误的6。

I'm new to C++ and Boost. I'm doing a small simple program to trying to learn the Boost Filesystem library. I have followed the directions to build the Boost libs. And now when I try to compile this simple code I get 6 of these errors.


Error   5   error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1600' in App.obj C:\SOURCE\ConsoleApp2\ConsoleApp2\libboost_filesystem-vc110-mt-gd-1_51.lib(codecvt_error_category.obj)  ConsoleApp2  
Error   1   error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1600' in App.obj C:\SOURCE\ConsoleApp2\ConsoleApp2\libboost_filesystem-vc110-mt-gd-1_51.lib(operations.obj)  ConsoleApp2  
Error   2   error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1600' in App.obj C:\SOURCE\ConsoleApp2\ConsoleApp2\libboost_filesystem-vc110-mt-gd-1_51.lib(path.obj)    ConsoleApp2  
Error   3   error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1600' in App.obj C:\SOURCE\ConsoleApp2\ConsoleApp2\libboost_filesystem-vc110-mt-gd-1_51.lib(path_traits.obj) ConsoleApp2  
Error   4   error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1600' in App.obj C:\SOURCE\ConsoleApp2\ConsoleApp2\libboost_filesystem-vc110-mt-gd-1_51.lib(windows_file_codecvt.obj)    ConsoleApp2  
Error   6   error LNK1104: cannot open file 'libboost_filesystem-vc100-mt-gd-1_51.lib'  C:\SOURCE\ConsoleApp2\ConsoleApp2\LINK  ConsoleApp2  

我的code在 App.cpp 在我的ConsoleApp2项目

My code in App.cpp in my ConsoleApp2 project

#include <iostream>
#include <boost/filesystem.hpp>

using namespace std;
using namespace boost::filesystem;

int main(void) 
{
    path p = "C:\\TestFiles";
    cout << is_directory(p);

    return 0;
}

我试图编译应用程序使用Visual Studio 2010中的一些我在网上找到的信息均与2012年VS此我并不认为适用于我。我想尝试解决5失配误差和最后的链接错误。我希望过去的错误之前,有关5。

I'm trying to compile the app with Visual Studio 2010. Some of the info I have found online were related to VS 2012. This I don't think applies to me. I'd like to try to solve the 5 mismatch errors and the final link error. I'm hoping the last error is related to the 5 before it.

推荐答案

libboost_filesystem-vc110-MT-GD-1_51.lib 是已建成VS库2012(也称为VC 11.0),由 vc110 中的命名惯例表示。该库将无法与VS 2010(也称为VC 10.0)内置对象正确链接。

libboost_filesystem-vc110-mt-gd-1_51.lib is a library that has been built with VS 2012 (Also known as VC 11.0), as indicated by the vc110 in the naming convention. This library will not link properly with objects built with VS 2010 (also known as VC 10.0).

如果你想用VS 2010来构建你的程序,你需要获得或建立Boost库的VS 2010。

If you want to build your program with VS 2010, you'll need to get or build boost libraries for VS 2010.

这篇关于C ++ /升压文件系统 - 为“_MSC_VER'检测不匹配:值'1700'不匹配值'1600'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆