包含GLM并进行编译时,QtCreator中出现“没有模板/没有命名的成员”错误

时间:2018-09-26 13:24:42

标签: c++ qt-creator glm-math

我正在尝试使用C ++,QtCreator和CMake设置一个简单的opengl程序。 添加GLM的包含(OpenGL Mathematics,仅用于标头)后,QtCreator会显示各种“未命名为..模板”和“未命名为..成员”的错误。 尽管如此,代码编译没有问题。

#pragma once

#include <glm/glm.hpp>

#include <cassert>
#include <iostream>
#include <stdexcept>
#include <cmath>
#include <vector>

std::vector<int> pp;

int main() {
    std::cout << "Hi" << std::endl;
}

在此玩具示例中,QtCreator指示:

  

错误:命名空间“ std”中没有名为“ vector”的模板

     

错误:命名空间“ std”中没有名为“ cout”的成员

它输出:

  

由于GLM仅是标头,因此我的CMakeLists.txt非常简单:

cmake_minimum_required(VERSION 2.8)

project(testgl)
add_executable(${PROJECT_NAME} "main.cpp")

包括glm的某些子部分(例如“ glm / vec2.hpp”)而不是“ glm / glm.hpp”可消除错误,而其他部分(例如“ glm / mat4x4.hpp”)则不会。

我在Linux上,使用gcc 8.2.0和GLM 0.9.9.0-1。 什么可以解释这种行为?

0 个答案:

没有答案