用命令行编译libjpeg.lib

今天在折腾libjpeg,这是一个开源的JPG文件的编码函数库。因为DirectX中提供了完善的图像文件格式支持,而OpenGL在这方面却显得非常简陋,只好自己来写JPG文件读取函数。而且libjpeg只提供了从文件读取的函数,无法处理内存中的数据,也就是说在处理打包的资源时会比较麻烦。幸好已经有高手写出了修改libjpeg代码的方法,需要重新编译libjpeg.lib。在修改之前先尝试了用命令行(Visual C++ 2008 Express Edition)来编译代码,遇到了一些问题,还好都不是大问题,都解决了,呵呵,赶紧记下来免得忘

1、从ftp://ftp.simtel.net/pub/simtelnet/msdos/graphics/jpegsr6.zip下载libjpeg的源代码

2、解压出来一堆文件,打开命令行窗口(CMD),进入代码所放的目录下

3、运行命令:nmake /f makefile.vc nodebug=1 开始编译,然后问题就来了

4、“nmake 不是内部或外部命令”
      这个执行文件在VC的安装目录中,解决方法:输入命令 path C:/Program Files/Microsoft Visual Studio 9.0/VC/bin 回车

5、makefile.vc<11>:fatal error U1052: file 'win32.mak' not found
      提示找不到win32.mak文件,这个文件定义了一些必须的宏,这个文件在Windows SDK的安装目录中,打开makefile.vc文件修改第12行为:
    !include <C:/Program Files/Microsoft SDKs/Windows/v6.0A/Include/win32.mak>
      保存,再执行编译命令又有新的错误。

6、NMAKE:fatal error U1073: don't know how to make 'jconfig.h'
      这是个奇怪的问题,在网上搜了半天没有结果,最后才发现原来目录中没有这个文件。其实只要把文件jconfig.vc更名为jconig.h即可。再执行编译命令又有新的错误。

7、NMAKE: fatal error U1077: '.../cl.EXE' : return code '0xc0000135'
      CL命令未能执行,我们直接在命令行提示后面输入cl回车,会有个提示“没有找到 mspdb80.dll ”。解决方法:输入 vcvars32 回车,这是一个用来设置VC路径环境的批处理。再次执行编译命令,出现了一行行字符快速的刷新,哈哈,已经开始编译了。最后又出现一个错误,这个就不用管它了,因为我们需要的libjpeg.lib文件已经出现在了当前目录中。

posted @   羊大葱  阅读(212)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示