使用MinGW64编译assimp-5.0.0出现链接错误如何解决
MinGW64编译assimp 5.0.0链接错误解决方案
- 方法一:禁用命令行工具编译
本次报错出现在assimp官方命令行工具的链接环节,如果你不需要使用该工具仅需核心库,可在执行CMake时添加关闭工具的参数,执行前需先删除之前生成的全部CMake缓存文件,完整命令如下:cmake CMakeLists.txt -G"MinGW Makefiles" -DASSIMP_BUILD_ASSIMP_TOOLS=OFF
重新生成配置后再执行mingw32-make即可正常完成编译。 - 方法二:手动补全链接依赖
如果你需要使用命令行工具,可在CMake生成配置后,手动打开tools/assimp_cmd/CMakeFiles/assimp_cmd.dir/link.txt文件,在末尾添加-lassimp参数后再执行编译即可解决。
也可以直接修改源码目录下的tools/assimp_cmd/CMakeLists.txt,在assimp_cmd的target_link_libraries配置项中明确添加assimp核心库依赖,之后重新生成CMake配置再编译即可。 - 方法三:编译动态库版本
该报错也可能由静态库符号导出规则触发,可在CMake阶段添加编译动态库的参数:cmake CMakeLists.txt -G"MinGW Makefiles" -DBUILD_SHARED_LIBS=ON
重新生成配置后编译即可正常通过。 - 方法四:升级assimp版本
对应的问题修复补丁并未合入assimp 5.0.0的正式发布包,可直接切换到5.0.1及以上的正式版本,无需修改任何配置即可正常编译。
内容的提问来源于stack exchange,提问作者I have removed this question i
相关产品推荐
相关产品推荐

