问题描述
你好,我尝试用 mingw32 编译 Assimp。
但是在编译过程中出现了多个错误。
第一个是:
C:\Users\MY_NAME\Downloads\assimp-5.0.1\assimp-5.0.1\code\SMD\SMDLoader.cpp:579:12: error: 'strtok_s' was not declared in this scope; did you mean 'strtok_r'?
我找到了解决此问题的方法,我更改了源代码并且它有效,但我没有找到解决第二个问题的方法。 第二个错误是:
c:\users\MY_NAME\downloads\assimp-5.0.1\assimp-5.0.1\contrib\zip\src\zip.h:30:15: error: conflicting declaration 'typedef long int ssize_t'
30 | typedef long ssize_t; /* byte count or error */
这是 zip.h 中的第 30 行:
typedef long ssize_t; /* byte count or error */
为了更清楚,我决定向您展示一段代码。 这是 zip.h 中第 27 到 31 行的一段代码
#ifdef _WIN64
typedef long long ssize_t; /* byte count or error */
#else
typedef long ssize_t; /* byte count or error *
#endif
我正在使用 mingw32 和 gcc (9.2.0)
有人能解释一下构建失败的原因吗?
解决方法
据我所知,这个issue在我们现在的master已经关闭了。你能试试Asset-Importer-Lib@github的最新版本吗?