Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ &引用;assimp/config.h“;未找到,它';不过文件夹里有_C++_Visual Studio_Opengl_Assimp - Fatal编程技术网

C++ &引用;assimp/config.h“;未找到,它';不过文件夹里有

C++ &引用;assimp/config.h“;未找到,它';不过文件夹里有,c++,visual-studio,opengl,assimp,C++,Visual Studio,Opengl,Assimp,我正在使用VisualStudio2019用OpenGL制作一个简单的场景。由于我可以访问头文件和assimp folderstructure,所以库和include似乎配置正确。 当我尝试包含任何assimp头时,尽管我得到了这个错误,但奇怪的是文件在文件夹中。当从文件中删除“.in”时,它被称为“config.h.in”。在“config.h”文件的第1016行中,我得到了错误代码“E0011”。内容如下 // ---------- All the Build/Compile-time de

我正在使用VisualStudio2019用OpenGL制作一个简单的场景。由于我可以访问头文件和assimp folderstructure,所以库和include似乎配置正确。 当我尝试包含任何assimp头时,尽管我得到了这个错误,但奇怪的是文件在文件夹中。当从文件中删除“.in”时,它被称为“config.h.in”。在“config.h”文件的第1016行中,我得到了错误代码“E0011”。内容如下

// ---------- All the Build/Compile-time defines ------------

/** @brief Specifies if double precision is supported inside assimp
 *
 * Property type: Bool. Default value: undefined.
 */

#cmakedefine ASSIMP_DOUBLE_PRECISION 1

#endif // !! AI_CONFIG_H_INC

这些是第1009到1018行,当该文件在VS19中打开时,我只有在切换到另一个文件时才得到错误。我又犯了错误


编辑。我确实使用了CMake和VS来构建库和.dll文件

config.h.in文件是配置生成过程的输入文件,该过程在我们在资产导入库中使用的CMake生成过程中执行。cmake运行将读取config.h.in文件,替换config.h.in中来自cmake的定义,并将生成的config.h文件写入您的include文件夹。因此,如果要生成有效的config.h文件,必须在运行自己的构建之前运行assimp cmake运行

我猜您只是在使用opengl示例的解决方案文件。因此,您可以安装cmake,在assimp安装的根文件夹中运行它,您将能够找到有效的config.h文件


config.h文件包含assimp配置的定义,如将使用哪种精度等。

是否运行了CMake?是的,我运行了,还使用VS2019构建了它。很好,然后搜索
config-h
,我隐约记得它在某些情况下是在错误的目录中生成的。@churill它在
libraries/assimp/include/assimp/
文件夹中。libraries是项目库的文件夹,如前所述,该文件最初作为“config.h.in”保存在其中。将其重命名为“config.h”会导致VS错误代码“E0011”。
config.h
config.h.in
是两个不同的文件(很抱歉上面的输入错误)。检查
config.h
的位置。(它是由CMake某处生成的)不要重命名任何东西,这不是文件的目的。不太清楚你在那里做什么。