- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 Linux Mint 17.2 机器上有一个 Netbeans 中的 C++ 项目。我正在使用 GCC 5 工具链(例如 g++ 5.3.0)、Netbeans 8.1 和 Boost 1.61.0。
我在我的项目中遇到了一个奇怪的警告,它到处都是。例如,在我的 main.cpp 中,我 #include <iostream>
在最顶部,那条线会收到警告。 (我看到这个警告发生在我包含在每个文件中的第一个文件中,所以它不是 iostream 等的问题)。
警告是有一个递归的#include
在 boost 。具体来说,Netbeans 提示 <boost/predef/os/bsd/free.h>
包括 <boost/predef/os/bsd.h>
那<boost/predef/os/bsd.h>
包括 <boost/predef/os/bsd/free.h>
.作为记录,这似乎是真的 - 有谁知道为什么在 boost 中有这个递归包含,它是否真的应该存在?
更大的问题是我的系统不是 BSD,所以我不知道为什么我会从 BSD header 中收到这些警告,这些警告不应该被包含或激活/定义。我尝试打印 BOOST_PLATFORM_CONFIG
从我的 main.cpp 中,它按预期打印出 boost 的 Linux 配置 header 的路径 - 而不是 BSD 配置 header 。而且,我的程序编译并运行良好,所以我假设它实际上从未使用过 BSD header 。这意味着这些 BSD header 给我警告的事实可能是 Netbeans 问题,而不是 boost 问题。
有没有人对如何使用这些奇怪的递归包含警告缩小和解决这个问题有任何想法?
最佳答案
我遇到了同样的问题。问题在于 boost predef/os/bsd.h header 。它在 #ifndef BOOST_PREDEF_OS_BSD_H 守卫的#else block 中#includes 5 个文件。这意味着如果这 5 个文件中的任何一个还包含 bsd.h(它们包含),则此头文件无法防止递归。
我的解决方案是编辑 predef/os/bsd.h 文件并在 #else block 中添加递归保护 - 因此,从第 94 行开始,我的 predef/os/bsd.h 文件现在看起来像:
#ifndef BOOST_PREDEF_OS_BSD_H_PREVENT_RECURSION <-- ADD THIS
#define BOOST_PREDEF_OS_BSD_H_PREVENT_RECURSION <-- ADD THIS
#include <boost/predef/os/bsd/bsdi.h>
#include <boost/predef/os/bsd/dragonfly.h>
#include <boost/predef/os/bsd/free.h>
#include <boost/predef/os/bsd/open.h>
#include <boost/predef/os/bsd/net.h>
#endif <-- ADD THIS
现在 netbeans 代码帮助很开心,我的代码仍然可以正确链接和编译。
关于c++ - boost/Netbeans : Recursive Includes Related to BSD on Linux Mint 17. 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39006863/
我在带有 Virtual box 的 Macbook proretina 中安装了 Linux mint 17 mate,但是字体很小,如何在 mate 中启用 HiDPI 选项? 最佳答案 MATE
鼠标光标消失(屏幕的最后一个像素)。 例如。现在一切正常。 如果我将鼠标移到显示器顶部,它就会消失。 但同时我可以点击顶部面板上的按钮。 任何想法如何解决它? 最佳答案 Heath Jones (hj
我按照此处的建议从多核软件编译并安装了 x265 编解码器:https://bitbucket.org/multicoreware/x265/wiki/Home然后按照此处的建议手动安装启用了 lib
我正在使用 Linux mint 18.3。我正在尝试更改 Jenkins 的主目录。我创建了新目录,从旧目录复制了所有数据。之后我修改了 .profile(放在那里 export JENKINS_H
我想压缩带有 linuxmint 的驱动器..当我尝试通过 Gparted 卸载具有 limuxmint 空间 700gb 的驱动器时,它显示消息 "# umount -v "/"umount:/:
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
前言:Linux mint 18发布了,但是在虚拟机下安装,发现没有1080p分辨率的选项,可能是4.4内核的原因?搜索了一下解决方法,自测可用,记录一下。 1. 创建一个shell脚
一.mysql默认不支持中文,它的server和db默认是latin1编码.所以我们要将其改变为utf-8编码,因为utf-8包含了地球上大部分语言的二进制编码 1.关闭mysql服务 sudo
近日小编在Linux mint系统操作时,登录root用户声卡突然没有了声音,相比大家也遇到相同的情况,下面小编就给大家介绍下Linux mint登录root用户时声卡无声音的处理方法,一起来学习下
中文字体发虚怎么修改 1、还是一个老生常谈的问题。Linux Mint 和 Ubuntu 及其衍生版用户都可以参照此法解决问题。从 Ubuntu 12.04 开始,系统使用中文字体的第一选择是“文
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界. 这篇CFSDN的博客文章Linux Mint Cinnamon中安装MATE桌面详细步骤由作者收
我正在使用 linux Mint 17.2“Rafaela”。今天我安装了佳能 iP2700 系列的驱动程序。驱动程序的 deb 包依赖于“libtiff4”包,但系统使用“libtiff5”,所以我
我正在建立一个很好的环境来在打印文档中展示我的代码。首先,我使用了 Latex 的 lSTListing 包,但后来我偶然发现了 类型转换 . minted 真的很棒,但有没有办法 更改高亮颜色 ?
我是linux mint的新手,我已经在它上工作了一个星期,而且声音根本不起作用。我尝试了很多在线建议的解决方案,但是没有运气。 谁能指导我问题所在或如何解决。 最佳答案 您是否在“声音设置”菜单中检
我想在 minted 包手册中为 minted 渲染源代码使用粗体字体。目前关键字是常用字体。 \usepackage[table]{xcolor} \usepackage{minted} \defi
肉眼观察,minted (Konrad Rudolph 的 LaTeX 包使用 Pygments 库进行代码突出显示)忠实地呈现传递给它的代码块,并以源代码中包含的任何缩进显示它们。 但是,如果您尝试
我是 C/Linux 的新手,我有一个简单的问题。考虑 sys/timerfd.h 头文件。它由函数定义组成: int timerfd_settime(int fd, int flags,
Linux MINT MYSQL 错误 您能解释一下发生了什么吗? 我无法在 xampp 中启动 我应该更改哪些配置? 我已经将/var/lib/mysql/更改为 chmod 777 201
我想创建一个自定义单元格,就像 Mint 应用程序中的单元格一样,它的功能几乎相同。我如何使用赚取和花费的数据绘制这两个条形图? 谢谢, 我做到了这一点: -(void)drawRect:(CGRec
我是一名优秀的程序员,十分优秀!