Windows下基于MSVC搭建libjpeg开发环境 (qq.com)
前言
官网
http://ijg.org/
下载的是jpegsr9e.zip
构建
参考源码中的install.txt
解压源码
打开VS的命令行
C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Visual Studio 2022\\Visual Studio Tools\\VC下的x64 Native Tools Command Prompt for VS 2022
进入到源码路径
cd C:\\Users\\qinyunti\\OneDrive\\wuqi\\usb\\jpegsr9e\\jpeg-9e
此时如果没有进入对应路径,则再输入
C:
生成VS工程V17对应VS2022,将jconfig.vc移动为 jconfig.h并生成工程
nmake /f makefile.vs setup-v17
使用nmake /f makefile.vs setupcopy-v17的话保留jconfig.vc可以重复生成。
编译库
双击打开
jpeg.sln
设置平台和自己的平台对应,这里选x64,菜单栏生成->生成解决方案
\\Release\\x64下生成静态库文件jpeg.lib
编译测试程序
双击打开
apps.sln
同样选择x86平台,菜单栏生成->生成解决方案
\\Release\\x64下生成cjpeg.exe,djpeg.exe,jpegtran.exe,rdjpgcom.exe,wrjpgcom.exe5个测试程序。
自测试
在命令行中
nmake /f makefile.vs test-64
如果是32位平台则
nmake /f makefile.vs test-32
没有差异说明测试OK。
测试输入文件位于
jpeg-9e
输出图片位于
jpeg-9e\\Release
在自己的工程中使用
工程配置
在自己的工程目录新建libjpeg文件夹,创建inc和lib子目录。
将jpeg.lib复制到lib目录下。
将源码中所有的.h文件复制到inc目录下。
右键点击工程名->属性
设置包含路径
$(MSBuildProjectDirectory)\\Src\\libjpeg\\inc;
设置库路径
$(MSBuildProjectDirectory)\\Src\\libjpeg\\lib;
设置链接的库文件jpeg.lib
测试代码
编码测试
复制源码路径的以下文件到自己的工程目录
生成解决方案
告警
1>C:\\Users\\qinyunti\\OneDrive\\wuqi\\usb\\USB_VS\\USB\\Src\\cdjpeg.c(154,3): error C4996: 'setmode': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _setmode. See online help for details.
将setmode改为_setmode
fileno改为_fileno
编码测试
从源码路径复制测试文件testimg.ppm过来
.\\cjpeg.exe testimg.ppm testimg.jpg
可以看到testimg.ppm编码为了testimg.jpg
解码测试
添加如下文件
同样的
将setmode改为_setmode
fileno改为_fileno
解码测试
.\\USB.exe -bmp -colors 256 testimg.jpg testimg.bmp
可以看到testimg.jpg解码为了testimg.bmp
审核编辑:汤梓红
-
嵌入式
+关注
关注
5082文章
19104浏览量
304796 -
WINDOWS
+关注
关注
3文章
3541浏览量
88621 -
源码
+关注
关注
8文章
639浏览量
29185 -
开发环境
+关注
关注
1文章
225浏览量
16609
发布评论请先 登录
相关推荐
评论