当前位置: 首页 > GNU/Linux程序, 流媒体学习 > 正文

libjpeg-turbo在Windows VS2010下的编译

去年曾经写过文章使用libjpeg-turbo,不过当时是基于Linux X86平台的,现在需要在Windows下使用这个库,于是上网找了一些编译方法,形成此文。

一、先期工作

1、下载CMake
下载地址为:https://cmake.org/download/,当前最新版本为3.5.2,可直接下载编译好的二进制压缩包:cmake-3.5.2-win32-x86.zip。
2、下载nasm
下载地址为:https://sourceforge.net/projects/nasm/,当前最新版本为2.07。下载后需要安装,并设置环境变量(后面在VS2010编译要使用到)。
3、下载libjpeg-turbo源码
下载地址为:https://github.com/libjpeg-turbo/libjpeg-turbo,这个是它的仓库,在Releases中有不同版本可下载。

二、生成VS2010解决方案

双击cmake-gui.exe,选择libjpeg-turbo源码目录,选择需要编译的目录,再点击configure按钮,在弹出的对话框选VS2010(还有其它VS版本可供选择),点击Finish即可进行Configure,再点击Generate即可生成解决方案文件:libjpeg-turbo.sln。如下图所示。

注:在此界面,可调整参数,比如是否生成动态库、静态库,安装目录(默认是c:/libjpeg-turbo)。调整后,需要重新进行Congifure和Generate两个步骤。

三、编译

双击打开libjpeg-turbo.sln,“ALL_BUILD”右键“生成”,即可进行编译。按上文步骤,是可正常编译的,如有问题,可能是nasm环境变量没有配置正确。为减小库文件体积,建议选择Release版本。
“INSTALL”右键“生成”,即可在c盘的libjpeg-turbo目录找到头文件和库文件,以及二进制文件。其中turbojpeg-static.lib是静态库。

注:在MFC中使用该库,会提示默认库冲突:
msvcrt.lib(cinitexe.obj) : warning LNK4098: 默认库“libcmt.lib”与其他库的使用冲突;请使用 /NODEFAULTLIB:library

解决方法是:在项目属性->链接器->输入->忽略特定默认库,添加libcmt.lib。

李迟 2016.4.19 周二 晚

本文固定链接: http://www.latelee.org/programming-under-linux/compile-libjpeg-turbo-under-vs2010.html

如无特别说明,迟思堂工作室文章均为原创,转载请注明: libjpeg-turbo在Windows VS2010下的编译 | 迟思堂工作室

目前暂无评论

发表评论

*

快捷键:Ctrl+Enter