使用MinGW静态编译Assimp
到了5月份了,没有写一篇日志,于是自己从知识库里面拿出一篇文章充数吧。这次将要解说怎样在Windows下使用MinGW静态编译Assimp。
Assimp是眼下比較全的3D格式解析库了,熟悉3D游戏开发的同行都知道,3D的格式非常混乱,各种3D格式在不同场合都有他们特定的应用,游戏引擎仅仅可以解析少部分3D格式,很多其它有用的格式来自游戏公司自己定义的格式。而在开源领域,Assimp算是比較全的3D格式导入库了。它对3D格式理解深入,非常适合整合至3D图形引擎中,让你们的程序支持很多其它3D的格式。Assimp下载地址:这里(提取码:60c5)
Cmake的下载地址:这里(提取码:46ac)
下载Assimp后,解压之,放在合适的位置,我这里放在E:/Develop中。set path=%path%;E:/Develop/cmake-2.8.12.1-win32-x86/bin;E:/Develop/Qt5.3/Tools/mingw482_32/bin2、然后到assimp库的根文件夹下
cd $${Assimp文件夹}3、使用cmake进行构建
cmake -G "MinGW Makefiles" ^ -DENABLE_BOOST_WORKAROUND=ON -DBUILD_STATIC_LIB=ON ^ -DCMAKE_RC_COMPILER=E:/Develop/Qt5.3/Tools/mingw482_32/bin/windres.exe ^ -DCMAKE_MAKE_PROGRAM=E:/Develop/Qt5.3/Tools/mingw482_32/bin/mingw32-make.exe ^ -DCMAKE_LFLAGS=-static ^ -DCMAKE_LFLAGS_DLL=-static ^ -DDX9_INCLUDE_PATH=E:/Develop/Qt5.3/Tools/mingw482_32/i686-w64-mingw32/include ^ -DD3D9_LIBRARY=E:/Develop/Qt5.3/Tools/mingw482_32/i686-w64-mingw32/lib/libd3d9.a ^ -DD3DX9_LIBRARY=E:/Develop/Qt5.3/Tools/mingw482_32/i686-w64-mingw32/lib/libd3dx9.a .假设你的计算机安装了DirectX库,那么cmake会查找头文件以及库文件,不必设置DX9_INCLUDE_PATH、D3D9_LIBRARY和D3DX9_LIBRARY。
最后假设想要使用assimp_cmd.exe和assimp_viewer.exe的话,须要libgcc_s_dw2-1.dll、libstdc++-6.dll以及libwinpthread-1.dll,这些都能够在MinGW文件夹中找到,想要使用assimp_viewer的话还须要有d3dx9_43.dll。当然,我这里也分享了一份assimp_viewer,下载地址在这里。