Boost test vs2013 fatal error C1001
Boost test vs2013 fatal error C1001
Boost test库提供了一个用于单元测试的基于命令行界面的测试套件UTF:Unit Test Framework,具有单元测试、检测内存泄露、监控程序运行的功能。根据官网介绍boost支持很多编译器。然而在Visual Studio 2013中使用boost的test模块时会报致命错误,如下图所示:

输出报错信息如下:
1>------ Build started: Project: Test, Configuration: Debug Win32 ------
1> main.cpp
1>d:\boost_1_70_0\boost\type_traits\common_type.hpp(47): fatal error C1001: An internal error has occurred in the compiler.
1> (compiler file 'msc1.cpp', line 1325)
1> To work around this problem, try simplifying or changing the program near the locations listed above.
1> Please choose the Technical Support command on the Visual C++
1> Help menu, or open the Technical Support help file for more information
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

定位到报错文件是common_type.hpp:

可以看出是因为CXX11的原因,因为VS2013不支持C++11,要么升级VS2013,打上支持CXX11的补丁,要么使用如下方法:
所以boost提供了一个宏定义来设置是否支持CXX11:
BOOST_NO_CXX11_TEMPLATE_ALIASES
在Project->Properties->C/C++->Preprocessor中设置即可:

在Visual Studio 2013中使用boost的test模块时会报致命错误,是因为VS2013没有完全支持CXX11标准。通过一个宏定义可以在不支持CXX11标准的编译器上继续使用boost.
Boost test vs2013 fatal error C1001的更多相关文章
- 【VS开发】fatal error C1001:编译器中发生内部错误
		
自己编译boost的库文件时遇到这个错误的,大概报错情况如下: mp_defer.hpp<50>:fatal error C1001:编译器中发生内部错误. 1> 要解决此问题, ...
 - fatal error c1001 编译器中发生内部错误 OpenMesh6.3
		
Internal Compiler Error VS 2015 Update1 VS2015 Update1 编译OpenMesh的额代码时发生错误 fatal error c1001 编译器中发生内 ...
 - 解决 Boost安装:fatal error: bzlib.h: No such file or directory 问题
		
参考: How to install all the boost development libraries? 解决 Boost安装:fatal error: bzlib.h: No such fil ...
 - 编译boost程序出现如下错误fatal error LNK1104: cannot open file 'libboost_system-vc100-mt-gd-1_54.lib'的解决方法
		
对于如下程序: #include <iostream> #include <boost/asio.hpp> #include <boost/date_time/posix ...
 - vs2013问题解决办法—>fatal error LNK1168 如何避免
		
问题:在使用visial studio 2013运行成功程序,但当修改其中的一段后,即语法,执行后报错 出现error:fatal error LNK1168:无法打开……\xxx.exe进行写入. ...
 - 解决“LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏”问题
		
更新VS2010,或者卸载VS2013安装2010后,建立项目时会出现"LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏"的错误 ...
 - cc1plus: fatal error: emeralddb-pmdMain.d: No such file or directory
		
签名autoscan, aclocal, config啥的都没错,最后make 报下面的错,查了各个文件没发现有啥问题,请哪位帮忙卡看 make[1]: Entering directory `/ro ...
 - fatal error C1083: 无法打开包括文件: “SDKDDKVer.h”: No such file or directory(转)
		
fatal error C1083: 无法打开包括文件: “SDKDDKVer.h”: No such file or directory 解决办法:(Vs2013中) 项目--右键--属性--配置属 ...
 - LINK : fatal error LNK1104
		
今天本来想试试opencv的,于是就在自己的机子上部署一下试试,结果一直遇到这个错误:LINK : fatal error LNK1104 环境:win7 64位 vs2012 opencv 2.4. ...
 
随机推荐
- mvc和mvvm区别
			
mvc和mvvm区别 MVC和MVVM的区别其实并不大.都是一种设计思想. 主要就是MVC中Controller演变成MVVM中的viewModel. MVVM主要解决了MVC中大量的DOM操作使页面 ...
 - 转:C语言中volatile关键字的作用 专家博客
			
源地址:http://blog.csdn.net/tigerjibo/article/details/7427366 一.前言 1.编译器优化介绍: 由于内存访问速度远不及CPU处理速度,为提高机器整 ...
 - CSS 属性2
			
CSS背景属性 background-color:背景颜色. background-image:背景图片地址.如:background-image:url(images/bg.gif) b ...
 - java-day08
			
继承概念 继承是多态的前提,主要用于解决共性抽取 特点 子类可以拥有父类的内容,子类也可以有自己的专属内容 格式 public class 父类{} public class 子类 extends 父 ...
 - uoj#311 【UNR #2】积劳成疾
			
题目 考虑直接顺着从\(1\)填数填到\(n\)发现这是在胡扯 所以考虑一些奇诡的东西,譬如最后的答案长什么样子 显然某一种方案的贡献是一个\(\prod_{i=1}^nw_i^{t_i}\)状物,\ ...
 - Walk Through Squares HDU - 4758 AC自动机+简单状压DP
			
题意:给你两个串,求用m个R,n个D能组成多少个包含这两个串 题解:先构造一个AC自动机记录每个状态包含两个串的状态, 状态很容易定义 dp[i][j][k][status]表示在AC自动机K这个节点 ...
 - Linux vi和vim编辑器(1)
			
1:vi和vim的三种常见模式 1.1正常模式 在正常模式下,我们可以使用快捷键: 以vim打开一个档案就直接进入一般模式了(这是默认的模式).在这个模式中,你可以使用[上下左右」按键来移动光标,你 ...
 - Nand Flash 控制器工作原理
			
对 Nand Flash 存储芯片进行操作, 必须通过 Nand Flash 控制器的专用寄存器才能完成.所以,不能对 Nand Flash 进行总线操作.而 Nand Flash 的写操作也必须块方 ...
 - (转)nginx下基于ThinkPHP框架的网站url重写
			
nginx下基于ThinkPHP框架的网站url重写nginx下的基于thinkphp的应用的url重写,需了解thinkphp的各种url格式参数的处理逻辑以及nginx重写的原理.简单点说,无论哪 ...
 - Python全栈开发:Ajax全套
			
概述 对于WEB应用程序:用户浏览器发送请求,服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML)渲染并显示浏览器上. 1.传统的Web应用 一个简单操作需要 ...