在windows上编译Mesa3d opengl32库

cheungmine

http://blog.csdn.net/ubuntu64fan/article/details/8061475

Mesa3d是一套跨平台的opengl/es库, 它不提供编译好的二进制包,所以必须自己动手编译. Linux默认都带了这个软件, 因此Linux上直接用就可以了. 如果想在linux上的编译, 也比较简单, 本文不赘述.那么如何在Windows上编译这个库呢? Mesa3d官网给出了编译方法.

http://www.mesa3d.org/install.html

遗憾的是我在编译过程中出现了错误,编译失败.最后我总结出了正确的编译方法,具体过程如下:

我的系统是Windows7+VS2010

1) 下载MesaLib-9.0.zip, 解压到c:\NVPACK\MesaLib-9.0

ftp://ftp.freedesktop.org/pub/mesa/9.0/MesaLib-9.0.zip

2) 安装python-2.7.2.msi, 位置: C:\NVPACK\python27\

增加系统环境变量:

Path=......; C:\NVPACK\python27;C:\NVPACK\python27\Scripts

3) 安装libxml2-python-2.7.7.win32-py2.7.exe,安默认提示操作即可

http://xmlsoft.org/sources/win32/python/libxml2-python-2.7.7.win32-py2.7.exe

4) 安装scons-2.2.0-setup.exe,安默认提示操作即可

http://www.scons.org/

Production(2.2.0)/Windows

http://prdownloads.sourceforge.net/scons/scons-2.2.0-setup.exe

5) 安装MinGW, 安装在C:\NVPACK\MinGW

http://sourceforge.net/projects/mingw/files/latest/download

选择全部checkbox, 然后进入更新安装过程...

6) 运行MinGW Shell, 敲入下面的命令安装flex和bison

$ mingw-get install msys-flex msys-bison

复制下面的文件

C:\NVPACK\MinGW\msys\1.0\bin\flex.exe

为:

C:\NVPACK\MinGW\msys\1.0\bin\lex.exe

检验:

运行MinGW Shell, 敲入命令:

$ lex

$ yacc

如果没问题,说明lex和yacc安装正确.

7) 编译Mesa9.0. 运行MinGW Shell,敲入命令:

$ cd /c/NVPACK/Mesa-9.0

$ /c/NVPACK/python27/Scripts/scons.py

接下来就是一通编译过程. 编译出来的是debug版本. 下面是编译成功结束的样子:

到下面的目录中看看吧, 天哪: opengl32.dll真的生存了呀:

C:\NVPACK\Mesa-9.0\build\windows-x86-debug\mesa\drivers\windows\gdi\opengl32.dll

C:\NVPACK\Mesa-9.0\build\windows-x86-debug\gallium\targets\libgl-gdi\opengl32.dll

8) 如果编译release版本呢? 这个问题留给聪明的读者.

最新文章

  1. ASP.NET Core 中文文档 第二章 指南 (09) 使用 Swagger 生成 ASP.NET Web API 在线帮助测试文档
  2. 【原】Go语言及Web框架Beego环境无脑搭建
  3. 第26章 创建型模式大PK
  4. 【COGS】714. USACO 1.3.2混合牛奶(贪心+水题)
  5. html5中的一些新语义标签
  6. 【分享】IT产业中的三大定理(二) —— 安迪&比尔定理 (Andy and Bill's Law)
  7. bzoj3675: [Apio2014]序列分割
  8. [分享]源代码&开发手记:SAE应用“车百科” (Python + SAE + Bottle + Bootstrap) - Bottle - Python4cn(news, jobs)
  9. [译]Java 设计模式之抽象工厂
  10. r.js build.js配置
  11. Docker 下载镜像
  12. [20190415]11g下那些latch是共享的.txt
  13. 第七节: EF的三种事务的应用场景和各自注意的问题(SaveChanges、DBContextTransaction、TransactionScope)
  14. C#通过读取Mysql脚本创建数据库
  15. Python 数据结构和算法
  16. css选择器思维导图
  17. 机器学习笔试--LeetCode
  18. C指针与内存
  19. Vivado神器之DocNav
  20. python进行数据分析---python3卡方

热门文章

  1. 8.桥接模式(Bridge Pattern)
  2. [译]C#控制管理VisualSVN Server
  3. Python读写文件乱码问题
  4. hdu 4398 STL
  5. javaWeb项目中web.xml的xsd( XML Schemas Definition)文件
  6. Android下拉刷新完全解析,教你如何一分钟实现下拉刷新功能 (转)
  7. 异步加载图片Universal-Image-Loader
  8. Hark的数据结构与算法练习之地精(侏儒)排序
  9. python 类访问控制
  10. JVM的生命周期