现在的位置: 首页 > 综合 > 正文

在VS2005下编译libjpeg

2018年05月28日 ⁄ 综合 ⁄ 共 1188字 ⁄ 字号 评论关闭

首先写上我主要参考资料:

1,VS2005环境下采用makefile编译、使用libjpeg.lib函数库:http://www.cnblogs.com/zhujiecode/articles/2518104.html

2,用命令行编译libjpeg.lib: http://blog.csdn.net/mngzilin/article/details/5633546


    在我的另一篇文章里详细写了在VS2010中编译libjpeg的过程及其应用例子,今天需要在一个VS2005的工程中引用编译出来的jpeg.lib,总是提示错误:

fatal error C1007: unrecognized flag '-typedil' in 'p2'

LINK : fatal error LNK1257: code generation failed

后来在网上查,说可能是引用的jpeg.lib 不是在VS2005中编译的,需要保持统一版本编译。所以今天尝试在VS2005中编译libjpeg。


我的编译过程:

1,下载libjpeg的源代码  下载地址:http://www.ijg.org/  我下载到的是jpegsr8d.zip,解压后得到文件夹jpeg-8d

2、(可以先设置,也可以在编译出现问题2后再设置:
    在文件夹jpeg-8d里新建jconfig.h文件,将jconfig.vc里的内容拷到jconfig.h中;或者直接将jconfig.vc改名为jconfig.h)

3、编译.

    在“运行”中输入CMD,通过命令“cd 文件夹名”逐层进入到C:\Program Files\Microsoft Visual Studio 8\VC\bin目录(实际的VS2005安装目录)下
    ->运行vcvars32.bat文件

    ->然后再通过命令进入jpeg-8d文件夹,输入命令:NMAKE /f   makefile.vc

出现问题1: “file 'win32.mak' not found”
      提示找不到win32.mak文件,这个文件定义了一些必须的宏,这个文件在Windows SDK的安装目录中,打开makefile.vc文件修改第12行为:
    !include <C:/Program Files/Microsoft SDKs/Windows/v6.0A/Include/win32.mak>
      保存,再执行上述命令。

出现问题2:“NMAKE:fatal error U1073: don't know how to make 'jconfig.h'”
      这是个奇怪的问题,在网上搜了半天没有结果,最后才发现原来目录中没有这个文件。其实只要把文件jconfig.vc更名为jconig.h即可(如步骤2中已经设置好,则不会出现此问题)。

这样就生成了我们的libjpeg.lib了

有人在最后一步还会遇到其他问题,可参照我上方列出的参考资料2

抱歉!评论已关闭.