加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows下编译 libjpeg以及libjpeg-turbo

发布时间:2020-12-13 21:10:29 所属栏目:Windows 来源:网络整理
导读:一、编译libjpeg 1、下载源代码下载地址:http://www.ijg.org/files/, 选择最新版本的windows版本压缩包,进行下载。 2、使用vs2012的visual studio tools下的本机工具命令提示,进行编译。 Microsoft Visual Studio 2012 ----Visual Studio Tools -------V

一、编译libjpeg

1、下载源代码下载地址:http://www.ijg.org/files/,
选择最新版本的windows版本压缩包,进行下载。


2、使用vs2012的visual studio tools下的本机工具命令提示,进行编译。

Microsoft Visual Studio 2012
----Visual Studio Tools
-------Visual Studio 本机工具命令提示(2012)


3、打开VS2010的命令行窗口,将目录转到libjpeg所在文件下。

4,此时“nmake -f makefile.vc”编译会失败,需要修改两个地方:

1)将makefile.vc里的12行,运来是!incldue<win32.mak>替换为!include <C:Program FilesMicrosoft

SDKsWindowsv6.0AIncludewin32.mak>

2)新建一个文件名叫jconfig.h,将jconfig.vc中的内容全部复制过来。

5、命令行窗口,编译jpeglib,生成libjpeg.lib
nmake -f makefile.vc


二、编译libjpeg-turbo:

1、 从https://sourceforge.net/projects/libjpeg-turbo/下载libjpeg-turbo最新源代码,将其保存到E:Desktoplibjpeg-

turbo-master文件夹下;

2、 从http://www.cmake.org/下载最新版的CMake,并安装;

3、 在E:Desktoplibjpeg-turbo-master文件夹下手动创建一个build文件夹;

4、 打开CMake,其中where is the source code选项,选择E:Desktoplibjpeg-turbo-master;where to build the binaries选项,选择E:Desktoplibjpeg-turbo-masterbuild;


5、点击Configure,在弹出的对话框中选择你电脑上的VS,我装的是vs2012,因此选择visual stdio 11。其它默认,

点击Finish;


6、点击Generate,此时会在build文件夹中看到很多vcxproj项目文件,以及一个libjpeg-turbo.sln文件;此时打开这个 sln进行编译是不会成功的,它不会生成各种lib。

7、从https://sourceforge.net/projects/nasm/下载最新版的nasm;

8、将nasm安装到电脑上任意文件夹下,并将其中的nasm.exe和ndisasm.exe两个文件拷贝到

C:ProgramFilesMicrosoft Visual Studio 10.0VCbin下(如果是64位,则拷贝到C:ProgramFiles (x86)

Microsoft Visual Studio 10.0VCbin);

9、打开libjpeg-turbo.sln,分别在Debug和Release下,选择Solution Explorer里的Solution libjpeg-turbo,点击右 键,运行”Rebuild Solution”,然后选中INSTALL,build;

10、全部完成后会在build文件夹下会生成很多文件夹,编译成功,我们所需要的.exe以及lib文件在debug或者release 中;


三、注意

libjpeg.lib是用c语言开发的,
如果在C++程序里使用,需要用extern "C" { }包含一下。
如下:
extern "C"
{
#include "jpeglib.h"
}

四、包

为了方便大家,我将编译好(32位)的包传上来,大家可以直接下载,libjpeg.lib!!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读