在Windows下使用MinGW静态编译Assimp

使用MinGW静态编译Assimp

到了5月份了,没有写一篇日志,于是自己从知识库里面拿出一篇文章充数吧。这次将要讲解如何在Windows下使用MinGW静态编译Assimp。

Assimp是目前比较全的3D格式解析库了,熟悉3D游戏开发的同行都知道,3D的格式非常混乱,各种3D格式在不同场合都有他们特定的应用,游戏引擎只能够解析少部分3D格式,更多实用的格式来自游戏公司自定义的格式。而在开源领域,Assimp算是比较全的3D格式导入库了。它对3D格式理解深入,很适合整合至3D图形引擎中,让你们的程序支持更多3D的格式。

要静态编译Assimp,首先需要准备Assimp的源码、cmake和MinGW。MinGW我选用的是Qt自带的库,大家可以自己选择合适的MinGW或是TDM-MinGW。这里我将Assimp的源码和cmake分享一下,以便自己日后查阅。

Assimp下载地址:这里(提取码:60c5)

Cmake的下载地址:这里(提取码:46ac)

下载Assimp后,解压之,放在合适的位置,我这里放在E:/Develop中。

同时下载cmake后,解压之,放在合适的位置。我这里放在E:/Develop中。

然后cmd进入命令行,我们主要在命令行进行编译。

1、 首先设置环境变量,我这里是这么设置的:

set path=%path%;E:/Develop/cmake-2.8.12.1-win32-x86/bin;E:/Develop/Qt5.3/Tools/mingw482_32/bin

2、然后到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。

4、在mingw32-make之前,修改一下源代码。因为编译会出现错误:

在$${Assimp目录}/include/assimp/types.h中修改:

在52行后添加#include <string.h>,就行了。

5、修改$${Assimp目录}/tools/assimp_view/CMakeFiles/assimp_viewer.dir/build.make中418行,删除$(RC_FLAGS);修改$${Assimp目录}/tools/assimp_cmd/CMakeFiles/assimp_cmd.dir/build.make中的58行,删除$(RC_FLAGS)

6、mingw32-make -j 4进行构建。如果顺利的话,libassimp.a以及assimp_cmd.exe和assimp_viewer.exe都会顺利地构建。

最后如果想要使用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,下载地址在这里

在Windows下使用MinGW静态编译Assimp,布布扣,bubuko.com

时间: 2024-12-20 15:13:43

在Windows下使用MinGW静态编译Assimp的相关文章

windows 下使用 MinGW + msys 编译 ffmpeg

本文参考了网络上的不少文章,但由于版本环境的问题参考文章并不能直接指导编译,本文吸收多方经验,并在自己多次编译实验的基础上写成,欢迎转载,请注名出处.    FFmpeg是在Linux平台下开发的,但它同样可以在其它操作系统环境中编译运行,本文介绍的就是在windows下编译FFmpeg.一 编译准备    您最好新建一个目录专门用来保存以下下载的文件.1 下载 MinGW 和 MSYS    MinGW(Minimalist GNU on Windows):一个可自由使用和自由发布的Windo

Windows下使用mingw+cmake编译C/C++程序

按照正常流程安装好mingw和cmake后,仍然是无法直接使用cmake编译处MakeFile文件的,我们需要在CMakeLists.txt中做一些配置. 首先,在PROJECT之前,设置: SET(CMAKE_C_COMPILER "D:/mingw64/bin/gcc.exe") SET(CMAKE_CXX_COMPILER "D:/mingw64/bin/g++.exe") 注意按实际安装情况更换gcc和g++的位置. 修改完后,使用cmake仍然会报错.这是

Qt for Windows:Qt 5.5 MinGW 静态编译版本制作带Mysql

看到网上很多人都在求Qt静态编译带Mysql,包括我自己在内也是google了N多资料才搞定,正所谓滴水之恩当涌泉相报,没有网上各位网友的帖子我至今还是懵懵懂懂,所以这里我就整理下,希望对大家有所帮助 使用环境:win10Pro  配置时关闭了杀软,包括win Defender 流程规划: 下载安装必须组件  qt5.5 perl python mysql  etc. 安装qt 5等组件Mysql库的转换 编译安装 配置 使用 安装 Qt5安装包 这里Mingw版本: 下载地址:http://d

手把手教你在Windows下使用MinGW编译libav(参考libx264的编入)

转自:http://www.th7.cn/Program/cp/201407/242762.shtml 手把手教你在Windows下使用MinGW编译libav libav是在Linux下使用纯c语言开发的,不可避免的,libav源码使用了一些gcc的特性,那么在Windows下很难使用VC编译,但是使用MinGW编译却简单多了,下面我将根据自己的经历逐步介绍使用MinGW编译libav的过程以及在此过程中遇到的问题及其解决方法. 1      安装MinGW编译环境 1.1    安装MinG

在Windows下用MingW 4.5.2编译live555

1.下载live555(http://www.live555.com/liveMedia/public/),解压. 2.进入MingW Shell,输入cd: F:/Qt/live(假定解压到F:/Qt/live/目录下) 3../genMakefile mingw 4.make,如果有错误(rtsp_from_spec error),执行$export CC=gcc. 5.make install,会在BasicUsageEnvironment,groupsock,liveMedia,Usag

在Linux下使用MinGW静态交叉编译带有zlib的libcurl(包括交叉编译openssl,即--cross-compile-prefix=i686-w64-mingw32- mingw)

在Linux下使用MinGW静态交叉编译带有zlib的libcurl libcurl是一个跨平台的.易用的.强大的网络库.在大部分Linux发行版中都有编译好的二进制包可供使用,Mac系统更是将其作为了一个核心部件.但是在Windows平台上却需要手工编译,更不必说一些有特殊洁癖的人(比如说我)还特别讨厌多出来几个DLL,非要静态链接不可.本文作为我两个晚上折腾经历的一个小小总结,讲解如何在Linux下使用MinGW编译给Windows使用的libcurl静态库. STEP1 安装MinGW编译

用mingw静态编译Qt4.8.2和Qt5.1.1(需要修改不少源码)

因为一些乱七八糟的原因,我需要用mingw静态编译Qt4.8.2和Qt5.1.1.经历了一天的折腾之后,自觉编译一下Qt还是件颇为麻烦的事情,故将过程略作总结,以备不时之需. 首先,在编译之前,我需要下载mingw.qt-everywhere-opensource-src-4.8.2和qt-everywhere-opensource-src-5.1.1. 然后,准备开始编译了,当然先得把压缩包解压到一个合适的地方.我这里的路径是"C:\Qt"下面. 解压完毕后,先试着编译Qt4.8.2

Windows下Eclipse + MinGW + Glade + GTK+环境搭建

本文主要介绍Windows下GTK+开发环境的搭建,通过在Eclipse中安装插件Pkg-config support for Eclipse CDT使开发灵活简便: 第一步:安装MinGW,安装Glade(不做赘述):第二步:下载gtk+-bundle_3.6.4-20130921_win32.zip并解压到某个目录下(如:E:\GUI\gtk),并根据gtk目录下的×××.README.txt文件配置PATH:第三步:下载eclipse-java-indigo-SR2-win32.zip(i

windows下使用MinGW的调试工具gdb.exe调试C程序

1.编译源代码 C:MinGW\bin>gcc.exe -g -o program.exe program.c 编译选项上要加上“g”,这样生成的目标程序会含有调试内容,再用gdb调试的时候才能使用.显然加上“g”选项生成的应用程序会比不加的大,但两者运行时没有差别. 2.启动调试 C:MinGW\bin>gdb.exe program.exe 3.设置断点并启动运行 (gdb)break main(gdb)start 不能直接start,因为程序运行太快了,直接start就运行到程序停止的地