所以,我正在尝试进入 LWJGL,其中一部分是加载 3D 模型,我想我应该使用 JAssimp 来实现这一点。自述文件指定了两个步骤,构建 native 组件和 .jar 组件。这个 jar 只是 Ant build 的,所以它的发生没有发生任何事故。困难的部分是 native 库。我一直在尝试链接它,但没有成功。我已经包含了 assimp 包含目录、Java header ,并链接到 JAssimp 的 assimp.lib。但是,我仍然收到这些错误:
jassimp.obj : error LNK2019: unresolved external symbol _aiImportFile referenced in function _Java_jassimp_Jassimp_aiImportFile@20
jassimp.obj : error LNK2019: unresolved external symbol _aiReleaseImport referenced in function _Java_jassimp_Jassimp_aiImportFile@20
jassimp.obj : error LNK2019: unresolved external symbol _aiGetErrorString referenced in function _Java_jassimp_Jassimp_aiImportFile@20
C:\Users\Kevin\Downloads\assimp-3.1.1-win-binaries\port\jassimp\jassimp-native\src\Release\Jassimp.dll : fatal error LNK1120: 3 unresolved externals
谷歌搜索导致了几乎相同的问题,但没有答案,并且一个在facepunch上的人显然找到了解决方案,但拉出了https://xkcd.com/979/并且从未提及如何。显然,我错过了链接到某个库,但我不确定还可以链接到什么,Assimp 只为我提供了一个,而且我不确定我还需要什么。难道我安装错了?
最佳答案
对于任何遇到同样问题的人来说,答案是采用老式方法并自己编译 C++ Assimp。这将为您提供(除其他外)一个新的 assimp.lib。使用此链接而不是提供的链接,错误就会消失。
关于java - 无法为 Windows x86 构建 JAssimp.dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34165211/