Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Windows编译libjpeg库

Windows编译libjpeg库

作者头像
Qt君
发布于 2019-07-30 12:07:46
发布于 2019-07-30 12:07:46
3.7K00
代码可运行
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程
运行总次数:0
代码可运行

Qt君最近在做图像相关的项目,用到了libjpeg库。记录libjpeg编译步骤供大家参考。

1.下载源码(jpegsrc9c.zip)

  • 官网地址:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http://www.ijg.org/
  • jepgsrc9c.zip源码包下载地址:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http://www.ijg.org/files/jpegsr9c.zip
  • 如上的下载地址失效可以使用Qt君的github仓库下载:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://github.com/aeagean/LibjpegForWindows/blob/master/jpeg-9c/jpegsr9c.zip

2.如何找到编译配置方法?

  下载的源码中有一个编译安装教程文件(install.txt)。

  • 从install.txt中摘取的VC++6配置编译方法:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Microsoft Windows, Microsoft Visual C++ 6 Developer Studio:

To use:
1. Open the command prompt, change to the main directory and execute the
   command line
	NMAKE /f makefile.vs  setup-vc6
   This will move jconfig.vc to jconfig.h and makefiles to project files.
   (Note that the renaming is critical!)
2. Open the workspace file jpeg.dsw, build the library project.
   (If you are using Developer Studio more recent than 6.0, you'll
   probably get a message saying that the project files are being updated.)
3. Open the workspace file apps.dsw, build the application projects.
4. To perform the self-test, execute the command line
	NMAKE /f makefile.vs  test-build
5. Move the application .exe files from `app`\Release to an
   appropriate location on your path.
  • 从install.txt中摘取的VS2017配置编译方法:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Microsoft Windows, Visual Studio 2017 (v15):

To use:
1. Open the Developer Command Prompt, change to the main directory and
   execute the command line
	NMAKE /f makefile.vs  setup-v15
   This will move jconfig.vc to jconfig.h and makefiles to project files.
   (Note that the renaming is critical!)
2. Open the solution file jpeg.sln, build the library project.
     a) If you are using Visual Studio more recent than
	2017 (v15), you'll probably get a message saying
	that the project files are being updated.
     b) If necessary, open the project properties and
	adapt the Windows Target Platform Version in
	the Configuration Properties, General section;
	we support the latest version at the time of release.
3. Open the solution file apps.sln, build the application projects.
4. To perform the self-test, execute the command line
	NMAKE /f makefile.vs  test-build
5. Move the application .exe files from `app`\Release to an
   appropriate location on your path.

3.以编译VS2017版本为例

  由于VC++6的编译方法与VS2017方法基本相同,这里使用VS2017的编译环境编译。

3.1 编译步骤

1. 打开VS2017开发者终端,主要是使用VS2017的开发环境。

2. 进入libjpeg库目录,使用NMAKE命令生成VS2017的项目文件(用于编译libjpeg库)。

图示:

命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NMAKE /f makefile.vs setup-v15

  这一步可能遇到的问题:如果出现以下情况,可能是你重复调用命令生成,导致文件不能重命名,或你修改了里面的一些文件名字。建议重新解压libjpeg库再执行命令生成。

3. 打开libjpeg库目录的jpeg.sln项目文件。

  这一步可能遇到的问题:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
jpeg.vcxproj.filters : warning  : 无法读取筛选器文件“jpeg.vcxproj.filters”。请卸载项目“jpeg.vcxproj”以便对其进行编辑。
jpeg.vcxproj.filters(1,1): 未能加载项目文件。根级别上的数据无效。第 1 行,位置 1

解决方法:

  • 使用记事本打开jpeg.vcxproj删除第1行的第1个位置的乱码字符;
  • 另存为UTF-8格式并覆盖jpeg.vcxproj文件。
  • 相似的问题可以使用同样的方法解决。

4. 编译

  这一步可能遇到的问题:

  • Windows SDK版本不匹配的问题。

解决方法:修改Windows SDK版本:

  • 提示必须定义入口点的问题:

解决方法:设置动态库或静态库:

3.2 最后编译成功

4.打包好的库和头文件

  • 仅供学习使用。
  • 32位与64位的release版本静态库。
  • 地址:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://github.com/aeagean/LibjpegForWindows
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ijg库的使用的几点注意
ijg库(http://www.ijg.org/)是用于处理jpeg解码和压缩的库,最新版本为2014发布的版本,可以在官网中下载jpegsr9a.zip 使用vs中个nmake 进行编译,对于这个版本的库,在编译的时候需要注意这几个点:    1.  可以在cmd中使用命令进行编译(前提是,将 nmake的路径配置到环境变量中path下了)形如:      设置三个变量:        变量名              变量值     include             D:\Program File
Gxjun
2018/03/26
9140
ijg库的使用的几点注意
Linux应用开发-libjpeg库交叉编译与使用
在开发板上如果想要显示jpeg格式的图片,必须用到libjpeg库,不可能自己去编写jpg的解码代码。
DS小龙哥
2022/05/09
4.3K0
Linux应用开发-libjpeg库交叉编译与使用
[C++][修改]GDAL源码编译vs2015/vs2017/vs2019
本教程通过vs2019/vs2017/vs2015测试通过,流程大体一致,测试为最新版本GDAL3.3.2,下面是参考教程。
云未归来
2025/07/18
580
[C++][修改]GDAL源码编译vs2015/vs2017/vs2019
Qt与VS2005/2008的完美配合(自己编译Qt4.5.1的详细步骤)
用过Linux的人想必都知道Qt(不是QuickTime,呵呵)这个名称,KDE就是用Qt写的,我也是接触Linux后才认识它的。
用户3519280
2023/07/06
8370
vs2005 QT4.7.1编译 详细
网上一搜有QT+2005编译的很多文章,但是都不详细,很多都编不过,特别的在configure 命令的时候会有 File or path is not found <nmake>提示。这说明系统没找到VS nmake.exe路径 。
用户3519280
2023/07/06
5290
win10环境下不通过cppan编译tesseract4.1动态库[通俗易懂]
在2021年1月份,cppan的官方网站关闭了,因此现在通过cppan自动下载tesseract所需要的环境依赖从而编译tesseract动态库的方式不可行。tesseract官方文档提供了通过sw下载环境依赖的编译方式,有兴趣的博友可以试试官方文档的方式。在这篇博客中将采用另外一种方式编译tesseract。tesseract依赖于leptonica,而leptonica又依赖于zlib、libjpeg、libpng、libtiff这4个运行库。因此我们一步步进行编译。
全栈程序员站长
2022/11/14
1.5K0
win10环境下不通过cppan编译tesseract4.1动态库[通俗易懂]
Leptonica在VS2010中的编译及简单使用举例
在tesseract-ocr中会用到leptonica库。这里对leptonica简介下。
全栈程序员站长
2022/07/10
1.2K0
【Android 内存优化】libjpeg-turbo 函数库交叉编译与使用 ( 交叉编译脚本编写 | 函数库头文件拷贝 | 构建脚本配置 | Android Studio 测试函数库 )
交叉编译脚本参考 : 之前已经做过两个函数库的交叉编译脚本 , FFMPEG 和 x264 开源库 , 而且都是使用 configure 生成 Makefile 文件 ;
韩曙亮
2023/03/27
1.9K0
【Android 内存优化】libjpeg-turbo 函数库交叉编译与使用 ( 交叉编译脚本编写 | 函数库头文件拷贝 | 构建脚本配置 | Android Studio 测试函数库 )
在Visual Studio2013中编译使用libcurl库
libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单上传,代理,cookies,和用户认证。想要知道更多关于libcurl的介绍,可以到官网 http://curl.haxx.se/上去了解,在这里不再详述。本文主要介绍如何在Visual Studio 2013开发环境中编译并使用libcurl库。
ccf19881030
2019/12/20
6.1K0
在Visual Studio2013中编译使用libcurl库
VS2015编译openjpeg(32/64位)
版权声明:本文为博主原创文章,转载请注明源地址。 https://blog.csdn.net/10km/article/details/50581246
10km
2019/05/25
1.6K0
【转】从零开始手敲次世代游戏引擎(二)
上一篇我们写了一个最基本的Hello Engine,并用Visual Studio的命令行工具,cl.exe进行了编译。
代码咖啡
2018/09/29
1.8K0
【转】从零开始手敲次世代游戏引擎(二)
如何在 Visual Studio 编译调试 Windows 版本的 Nginx 源码?
在我们的《C/C++ 网络编程实战训练营》第二课,我们给大家布置了两个作业,其中之一是为 Nginx 源码制作一个 Visual Studio 工程文件,可以在 Visual Studio 中调试 Windows 版本的 Nginx,这个作业的目的是:
范蠡
2023/01/04
2.4K0
如何在 Visual Studio 编译调试 Windows 版本的 Nginx 源码?
nmake(vs2015)命令行编译libjpeg-turbo(x86/amd64)
版权声明:本文为博主原创文章,转载请注明源地址。 https://blog.csdn.net/10km/article/details/51732883
10km
2019/05/25
2.3K0
Pytorch的C++端(libtorch)在Windows中的使用
填一个之前的坑啊,本篇的姊妹篇——利用Pytorch的C++前端(libtorch)读取预训练权重并进行预测 这篇文章中已经说明了如何在Ubuntu系统中使用libtorch做预测,当初也有朋友问我如何在Windows之下尝试使用libtorch,当时因为时间关系没有去看,后来就给忘了…现在有时间了当然要尝试一下~
老潘
2023/10/19
2.1K0
Pytorch的C++端(libtorch)在Windows中的使用
荔枝派Zero(全志V3S)驱动开发之RGB LCD屏幕显示jpg图片
由于从上篇博文 “荔枝派Zero(全志V3S)驱动开发之RGB LCD屏幕显示bmp图片” 中只实现了显示 bmp 图片,实际上我们很常用到的图片多数是 jpg 格式图片,因此我们需要折腾一下,实现 jpg 文件的显示。
Gnep@97
2023/08/10
5820
荔枝派Zero(全志V3S)驱动开发之RGB LCD屏幕显示jpg图片
更新:Visual Studio配置C++的GDAL库
  本文介绍在Visual Studio软件中配置、编译C++环境下GDAL库、SQLite环境与PROJ库的详细方法。
疯狂学习GIS
2024/07/22
1.2K6
更新:Visual Studio配置C++的GDAL库
windows 10编译YOLOv4,包括exe和d
参考前文 windows 10安装CUDA和cuDNN,地址是:https://xugaoxiang.com/2019/12/18/windows-10-cuda-cudnn/, 这里不再赘述。
AI算法与图像处理
2021/04/21
1.6K0
windows 10编译YOLOv4,包括exe和d
C++屏幕截图 图片转JPEG
C#实现同屏的时候,频繁截屏内存并不能很好的释放,所以就打算用C++实现这部分的功能。
码客说
2021/07/13
2.5K1
CEF -version 3325完整编译教程
http://blog.csdn.net/baidu_32237719/article/details/79509819(3239 版本编译)
franket
2020/07/24
19.1K0
Visual Studio配置C++的GDAL库!
  本文介绍在Visual Studio软件中配置、编译C++环境下GDAL库、SQLite环境与PROJ库的详细方法。
疯狂学习GIS
2023/06/26
1.7K6
Visual Studio配置C++的GDAL库!
推荐阅读
相关推荐
ijg库的使用的几点注意
更多 >
交个朋友
加入架构与运维工作实战群
高并发系统设计 运维自动化实践
加入北京开发者交友群
结识首都开发者 拓展技术人脉
加入前端工作实战群
前端工程化实践 组件库开发经验分享
换一批
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验