OpenGL Image (GLI) :找到一个或多个乘法定义的符号

OpenGL Image (GLI) : one or more multiply defined symbols found

本文关键字:符号 定义 GLI Image OpenGL 一个      更新时间:2023-10-16

我正在尝试设置一个使用 GLI 的类,但即使使用简单的代码,我也无法让库工作。

-----------------------------------------------------------------------
                                 header.hpp
-----------------------------------------------------------------------
#pragma once
#include "gligli.hpp"
-----------------------------------------------------------------------
                                 source.cpp
-----------------------------------------------------------------------
#include "header.hpp"
-----------------------------------------------------------------------
                                 main.cpp
-----------------------------------------------------------------------
#include "header.hpp"
int main(int argc, char* argv[])
{
    return 0;
}

以前从未遇到过这样的问题,但是当它已经包含在另一个.cpp文件中时.cpp似乎我无法在我的 main 中包含包含库本身的标头。我可以直接将库包含在我的源代码中.cpp而不是我的 header.hpp 但我认为这不是一个很好的解决方案。

Visual-Studio 构建输出显示:

致命错误 LNK1169 找到一个或多个多重定义的符号

请参阅此错误 https://github.com/g-truc/gli/issues/27。解决方案是将视图 ctor 和赋值运算符标记为内联。