尝试链接<boostproperty_treejson_parser.hpp>
Compile errors when attempting to link <boostproperty_treejson_parser.hpp>
我的项目中有以下"includes"文件。
#pragma once
//glm
#include <glmglm.hpp>
#include <glmext.hpp>
#include <glmgtcmatrix_transform.hpp>
//glew
#include "GLglew.h"
//glfw
#define GLFW_DLL
#include "GLFWglfw3.h"
//libpng
#include <png.h>
//std
#include <stdio.h>
#include <vector>
#include <map>
#include <stack>
#include <queue>
#include <list>
#include <memory>
#include <iostream>
#include <fstream>
#include <assert.h>
//boost
#include <boostfilesystem.hpp>
#include <boostproperty_treejson_parser.hpp> /* problem */
//mandala
#include "types.h"
#include "type_traits.h"
#include "hash.h"
#include "macros.h"
当我包含<boostproperty_treejson_parser.hpp>
时,我会得到很多错误,表明我正在重新定义APIENTRY
,比如这个:
1>c:program files (x86)windows kits8.0includesharedminwindef.h(130): warning C4005: 'APIENTRY' : macro redefinition
我不明白为什么会发生这种事。我曾试图通过将#define _MINWINDEF_
放在include语句之前来抑制对minwindef.h
文件的处理,但没有成功。有没有其他人遇到过这种情况,或者知道我如何正确地包含这个增强库?
注意
由于您既没有更新您的问题以反映您对include所做的更改,也没有提供完整的警告消息,我只能猜测:
在包含WinAPI标头的boost lib之前,仍然包含glfw.h
。因为当我只是在谷歌上搜索"APIENTRY重新定义"时,我得到的第一个结果是这个SO问题,包括答案:将WinAPI标头(或boost标头includeign their)放在glfw.h
include之前。
您可能还需要包括ptree
。
#include <boost/property_tree/ptree.hpp>
相关文章:
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 什么是"#include <boost/functional/hash.hpp> "?
- 使用Vulkan hpp vk::enumerateInstanceVersion()会导致segfault
- 如何将class.cpp和class.hpp编译为一个.o文件
- g++ -I 和 -L 命令来查找不起作用的 .hpp 文件
- VS Code C++:不准确的系统包括路径错误(wchar.h,boost/lambda/lambda.hpp)
- Gnuplot_i.hpp C++接口绘制局部变量而不是文件
- 致命错误:找不到'boost/uuid/uuid.hpp'文件
- 需要帮助调试"attribute parser"!C++ 来自黑客排名的问题
- BGL:当包含 random_spanning_tree.hpp 时,对strong_components的调用无法编译
- 造成致命错误:boost/fusion/iterator/equal_to.hpp 没有这样的文件或目录
- 无法使包含.hpp文件与其中的2个文件一起使用
- Boost.Spirit Alternative Parser parallelization
- 在指向现有内存地址的 hpp 文件中声明成员函数的最佳方法
- 无法打开包含文件'Graphics.hpp'没有这样的文件或目录,Visual Studio的其他包含不起作用
- 编译器正在查找.当"实施"完全在"我的"中时的CPP文件.HPP文件
- 我的项目中某些仅标头文件不能包含使用 CMake 和 Vscode 的"SFML/Graphics.hpp"
- QtCreator使用CMAKE_C_FLAGS来解释C++(hpp)标头
- 如何正确使用hpp文件和cpp文件中的嵌套类
- Boost标头parser.hpp未编译