所以,我试图进入LWJGL,其中的一部分是加载3D模型,我想我应该使用JAssimp来实现这个功能。自述指定两个步骤,即构建本机组件和.jar组件。这个罐子只是一只蚂蚁,所以它没有发生任何意外。困难的部分是本地图书馆。我一直试图把它联系起来,但没有成功。我已经包含了assimp包含目录、Java,并链接到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谷歌搜索的结果基本上是相同的问题,但没有答案,而且一个人的脸朝上显然找到了解决方案,但拉了一个https://xkcd.com/979/,从来没有提到如何。显然,我错过了链接到某些库,但我不知道还链接到什么,Assimp只提供给我一个,我不知道我还需要什么。我安装错了吗?
发布于 2015-12-09 01:24:08
对于遇到同样问题的其他人来说,答案是用老式的方法自己编写C++ Assimp。这将给您(除其他外)一个新的assimp.lib。与此链接,而不是提供的一个,错误将消失。
发布于 2015-12-09 18:25:27
如何建设
libassimp.so:在assimp/assimp-3.2A.cmake CMakeLists.txt -G 'Unix‘B.makeC.中发出这些命令,结果为AssImp/assimp-3.2/lib
( II)通过在jassimp本地/src中发出以下命令构建本机库:$ gcc jassimp.cpp -i/usr/lib/jvm/java-7-openjdk 64/include/\ -I/usr/lib/jvm/java-7-openjdk-amd64/include/linux \-i/$HOME/assimp/assimp-3.2/jassimp.cpp\-L/$HOME/AssImp/assimp-3.2/lib/libassimp.so -shared -fPIC -o libjassimp.so
libjassimp.so is required at runtime and must be located in java.library.path:
b. sudo cp /$HOME/AssImp/assimp-3.2/port/jassimp/jassimp-native/src/libjassimp.so /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/3) Java绑定-- java库是使用ant构建的。在端口/jassimp目录中执行"ant“应该足以构建库,包括文档。java构建被配置为创建java1.6类
The Jassimp.jar file generated by the "ant" call has to be incorporated
in your build.xml file:
<target name="init">
<property name="imports" value="${libs}/jogl-all.jar:${libs}/gluegen-rt.jar:${libs}/jassimp.jar" />
<target name="compile" depends="prepare">
<compilerarg line="-Xlint -cp ${imports}" />所有这些都是好消息;我成功地构建了我的代码。
坏消息是,执行时我收到以下错误: java:符号查找错误: /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/libjassimp.so:未定义符号: aiImportFile
https://stackoverflow.com/questions/34165211
复制相似问题