Windows 下 MinGW 编译 Assimp-5.2.4

C:\Qt\Tools\mingw1120_64\bin
cmake -G "MinGW Makefiles" -DENABLE_BOOST_WORKAROUND=ON -DBUILD_STATIC_LIB=ON -DCMAKE_RC_COMPILER=C:/Qt/Tools/mingw1120_64/bin/windres.exe -DCMAKE_MAKE_PROGRAM=C:/Qt/Tools/mingw1120_64/bin/mingw32-make.exe -DCMAKE_LFLAGS=-static -DCMAKE_LFLAGS_DLL=-static -DDX9_INCLUDE_PATH=C:/Qt/Tools/mingw1120_64/x86_64-w64-mingw32/include -DD3D9_LIBRARY=C:/Qt/Tools/mingw1120_64/x86_64-w64-mingw32/lib/libd3d9.a -DD3DX9_LIBRARY=C:/Qt/Tools/mingw1120_64/x86_64-w64-mingw32/lib/libd3dx9.a

编译错误

 几个错误都来自 unzip 库的编译警告,注释即可。

D:\assimp-5.2.4\contrib\unzip\crypt.c:47: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   47 | #   pragma warning(push)
      |
D:\assimp-5.2.4\contrib\unzip\crypt.c:48: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   48 | #   pragma warning(disable : 4244)
      |
D:\assimp-5.2.4\contrib\unzip\crypt.c:168: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
  168 | #   pragma warning(pop)
      |
cc1.exe: all warnings being treated as errors
mingw32-make[2]: *** [code\CMakeFiles\assimp.dir\build.make:3246: code/CMakeFiles/assimp.dir/__/contrib/unzip/crypt.c.obj] Error 1
mingw32-make[2]: *** Waiting for unfinished jobs....
mingw32-make[1]: *** [CMakeFiles\Makefile2:221: code/CMakeFiles/assimp.dir/all] Error 2
mingw32-make: *** [Makefile:135: all] Error 2
D:\assimp-5.2.4\contrib\unzip\ioapi.c:26: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   26 | #   pragma warning(push)
      |
D:\assimp-5.2.4\contrib\unzip\ioapi.c:27: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   27 | #   pragma warning(disable : 4131 4100)
      |
D:\assimp-5.2.4\contrib\unzip\ioapi.c:361: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
  361 | #   pragma warning(pop)
      |
cc1.exe: all warnings being treated as errors
D:\assimp-5.2.4\contrib\unzip\unzip.c:77: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   77 | #   pragma warning(push)
      |
D:\assimp-5.2.4\contrib\unzip\unzip.c:78: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   78 | #   pragma warning(disable : 4131 4244 4189 4245)
      |
mingw32-make[2]: *** [code\CMakeFiles\assimp.dir\build.make:3261: code/CMakeFiles/assimp.dir/__/contrib/unzip/ioapi.c.obj] Error 1
mingw32-make[2]: *** Waiting for unfinished jobs....
D:\assimp-5.2.4\contrib\unzip\unzip.c:1999: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
 1999 | #   pragma warning(pop)
      |
cc1.exe: all warnings being treated as errors
mingw32-make[2]: *** [code\CMakeFiles\assimp.dir\build.make:3276: code/CMakeFiles/assimp.dir/__/contrib/unzip/unzip.c.obj] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:221: code/CMakeFiles/assimp.dir/all] Error 2
mingw32-make: *** [Makefile:135: all] Error 2
D:\assimp-5.2.4\contrib\unzip\unzip.c:77: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   77 | #   pragma warning(push)
      |
D:\assimp-5.2.4\contrib\unzip\unzip.c:78: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
   78 | #   pragma warning(disable : 4131 4244 4189 4245)
      |
D:\assimp-5.2.4\contrib\unzip\unzip.c:1999: error: ignoring '#pragma warning ' [-Werror=unknown-pragmas]
 1999 | #   pragma warning(pop)
      |
cc1.exe: all warnings being treated as errors
mingw32-make[2]: *** [code\CMakeFiles\assimp.dir\build.make:3276: code/CMakeFiles/assimp.dir/__/contrib/unzip/unzip.c.obj] Error 1
mingw32-make[2]: *** Waiting for unfinished jobs....
mingw32-make[1]: *** [CMakeFiles\Makefile2:221: code/CMakeFiles/assimp.dir/all] Error 2
mingw32-make: *** [Makefile:135: all] Error 2

 如 crypt.c 文件

// #ifdef _WIN32
// #   pragma warning(push)
// #   pragma warning(disable : 4244)
// #endif // _WIN32

......

// #ifdef _WIN32
// #   pragma warning(pop)
// #endif // _WIN32

Cmake添加库

link_directories(${CMAKE_SOURCE_DIR}/dependences/assimp-5.2.4/lib)

......

target_link_libraries(PhysSimulation PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::OpenGLWidgets libassimp.dll.a)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值