很久之前写过一篇博客《mingw(gcc)编译libjpeg-turbo》,介绍了windows下用mingw编译libjpeg-turbo的过程。
当时对cmake的使用并不非常熟悉,对msvc的命令行编译也不在行,所以还不会用msvc编译libjpeg_turbo源码,所以只能从暂时libjpeg_turbo的官网(http://libjpeg-turbo.virtualgl.org/)下载编译好windows版本。
因为官网提供的windows版本是用vs2010编译的,在vs2015下使用需要打补丁才能避免连接错误(参见我的这个博客《VS2015下解决:error LNK2019: 无法解析的外部符号 __iob_func》),总是觉得不爽。
这阵子总算把msvc命令行编译的问题搞清楚了,于是顺理成章也把libjpeg_turbo用vs2015重新编译一遍,这样就可以不再使用补丁的方式将就了。
关于编译环境要求,除了vs2015之外,其他需要安装的软件参见《mingw(gcc)编译libjpeg-turbo》
如果编译32位(x86)版本执行
C:\Program Files (x86)\Microsoft Visual Studio 14.0>vc\vcvarsall x86
生成生成VS2015的命令行编译环境用于编译x86(32位代码)。
如果编译64位(amd64)版本则执行
C:\Program Files (x86)\Microsoft Visual Studio 14.0>vc\vcvarsall x86_amd64
关于vcvarsall
命令更详细的介绍参见我的另一篇博客《msvc交叉编译:使用vcvarsall.bat设置命令行编译环境》
D:\os.package\cpp\libjpeg>mkdir libjpeg-turbo-1.4.2.msc
D:\os.package\cpp\libjpeg>cd libjpeg-turbo-1.4.2.msc
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RELEASE ..\libjpeg-turbo-1.4.2
输出
-- The C compiler identification is MSVC 19.0.23918.0 -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe -- works
-- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- CMAKE_BUILD_TYPE = RELEASE -- VERSION = 1.4.2, BUILD = 20160622 -- Arithmetic encoding support enabled -- Arithmetic decoding support enabled -- TurboJPEG C wrapper enabled -- TurboJPEG Java wrapper disabled -- In-memory source/destination managers enabled -- 64-bit build -- CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT = 1 -- Install directory = c:/libjpeg-turbo64 -- Building x86_64 SIMD extensions -- Configuring done -- Generating done -- Build files have been written to: D:/os.package/cpp/libjpeg/libjpeg-turbo-1.4.2.msc
执行nmake install完成编译和安装过程:
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2.msc>nmake install
Microsoft (R) 程序维护实用工具 14.00.23918.0 版
版权所有 (C) Microsoft Corporation。 保留所有权利。
Scanning dependencies of target simd
[ 0%] Generating jfdctflt-sse-64.obj
[ 1%] Generating jccolor-sse2-64.obj
[ 1%] Generating jcgray-sse2-64.obj
[ 2%] Generating jcsample-sse2-64.obj
[ 2%] Generating jdcolor-sse2-64.obj
[ 2%] Generating jdmerge-sse2-64.obj
[ 3%] Generating jdsample-sse2-64.obj
[ 3%] Generating jfdctfst-sse2-64.obj
[ 4%] Generating jfdctint-sse2-64.obj
[ 4%] Generating jidctflt-sse2-64.obj
[ 5%] Generating jidctfst-sse2-64.obj
[ 5%] Generating jidctint-sse2-64.obj
[ 5%] Generating jidctred-sse2-64.obj
[ 6%] Generating jquantf-sse2-64.obj
[ 6%] Generating jquanti-sse2-64.obj
[ 6%] Built target simd
Scanning dependencies of target jpeg-static
[ 7%] Building C object CMakeFiles/jpeg-static.dir/jcapimin.c.obj
jcapimin.c
[ 7%] Building C object CMakeFiles/jpeg-static.dir/jcapistd.c.obj
jcapistd.c
[ 8%] Building C object CMakeFiles/jpeg-static.dir/jccoefct.c.obj
jccoefct.c
[ 8%] Building C object CMakeFiles/jpeg-static.dir/jccolor.c.obj
jccolor.c
[ 9%] Building C object CMakeFiles/jpeg-static.dir/jcdctmgr.c.obj
jcdctmgr.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\jcdctmgr.c(187): warning C4146: 一元负运算符应用于无符号类型,结果仍为无符号类型
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\jcdctmgr.c(187): warning C4307: “*”: 整型常量溢出
[ 9%] Building C object CMakeFiles/jpeg-static.dir/jchuff.c.obj
jchuff.c
[ 9%] Building C object CMakeFiles/jpeg-static.dir/jcinit.c.obj
jcinit.c
[ 10%] Building C object CMakeFiles/jpeg-static.dir/jcmainct.c.obj
jcmainct.c
[ 10%] Building C object CMakeFiles/jpeg-static.dir/jcmarker.c.obj
jcmarker.c
[ 11%] Building C object CMakeFiles/jpeg-static.dir/jcmaster.c.obj
jcmaster.c
[ 11%] Building C object CMakeFiles/jpeg-static.dir/jcomapi.c.obj
jcomapi.c
[ 12%] Building C object CMakeFiles/jpeg-static.dir/jcparam.c.obj
jcparam.c
[ 12%] Building C object CMakeFiles/jpeg-static.dir/jcphuff.c.obj
jcphuff.c
[ 12%] Building C object CMakeFiles/jpeg-static.dir/jcprepct.c.obj
jcprepct.c
[ 13%] Building C object CMakeFiles/jpeg-static.dir/jcsample.c.obj
jcsample.c
[ 13%] Building C object CMakeFiles/jpeg-static.dir/jctrans.c.obj
jctrans.c
[ 14%] Building C object CMakeFiles/jpeg-static.dir/jdapimin.c.obj
jdapimin.c
[ 14%] Building C object CMakeFiles/jpeg-static.dir/jdapistd.c.obj
jdapistd.c
[ 15%] Building C object CMakeFiles/jpeg-static.dir/jdatadst.c.obj
jdatadst.c
[ 15%] Building C object CMakeFiles/jpeg-static.dir/jdatasrc.c.obj
jdatasrc.c
[ 15%] Building C object CMakeFiles/jpeg-static.dir/jdcoefct.c.obj
jdcoefct.c
[ 16%] Building C object CMakeFiles/jpeg-static.dir/jdcolor.c.obj
jdcolor.c
[ 16%] Building C object CMakeFiles/jpeg-static.dir/jddctmgr.c.obj
jddctmgr.c
[ 17%] Building C object CMakeFiles/jpeg-static.dir/jdhuff.c.obj
jdhuff.c
[ 17%] Building C object CMakeFiles/jpeg-static.dir/jdinput.c.obj
jdinput.c
[ 18%] Building C object CMakeFiles/jpeg-static.dir/jdmainct.c.obj
jdmainct.c
[ 18%] Building C object CMakeFiles/jpeg-static.dir/jdmarker.c.obj
jdmarker.c
[ 18%] Building C object CMakeFiles/jpeg-static.dir/jdmaster.c.obj
jdmaster.c
[ 19%] Building C object CMakeFiles/jpeg-static.dir/jdmerge.c.obj
jdmerge.c
[ 19%] Building C object CMakeFiles/jpeg-static.dir/jdphuff.c.obj
jdphuff.c
[ 20%] Building C object CMakeFiles/jpeg-static.dir/jdpostct.c.obj
jdpostct.c
[ 20%] Building C object CMakeFiles/jpeg-static.dir/jdsample.c.obj
jdsample.c
[ 21%] Building C object CMakeFiles/jpeg-static.dir/jdtrans.c.obj
jdtrans.c
[ 21%] Building C object CMakeFiles/jpeg-static.dir/jerror.c.obj
jerror.c
[ 22%] Building C object CMakeFiles/jpeg-static.dir/jfdctflt.c.obj
jfdctflt.c
[ 22%] Building C object CMakeFiles/jpeg-static.dir/jfdctfst.c.obj
jfdctfst.c
[ 22%] Building C object CMakeFiles/jpeg-static.dir/jfdctint.c.obj
jfdctint.c
[ 23%] Building C object CMakeFiles/jpeg-static.dir/jidctflt.c.obj
jidctflt.c
[ 23%] Building C object CMakeFiles/jpeg-static.dir/jidctfst.c.obj
jidctfst.c
[ 24%] Building C object CMakeFiles/jpeg-static.dir/jidctint.c.obj
jidctint.c
[ 24%] Building C object CMakeFiles/jpeg-static.dir/jidctred.c.obj
jidctred.c
[ 25%] Building C object CMakeFiles/jpeg-static.dir/jquant1.c.obj
jquant1.c
[ 25%] Building C object CMakeFiles/jpeg-static.dir/jquant2.c.obj
jquant2.c
[ 25%] Building C object CMakeFiles/jpeg-static.dir/jutils.c.obj
jutils.c
[ 26%] Building C object CMakeFiles/jpeg-static.dir/jmemmgr.c.obj
jmemmgr.c
[ 26%] Building C object CMakeFiles/jpeg-static.dir/jmemnobs.c.obj
jmemnobs.c
[ 27%] Building C object CMakeFiles/jpeg-static.dir/jaricom.c.obj
jaricom.c
[ 27%] Building C object CMakeFiles/jpeg-static.dir/jcarith.c.obj
jcarith.c
[ 28%] Building C object CMakeFiles/jpeg-static.dir/jdarith.c.obj
jdarith.c
[ 28%] Building C object CMakeFiles/jpeg-static.dir/simd/jsimd_x86_64.c.obj
jsimd_x86_64.c
Linking C static library jpeg-static.lib
[ 28%] Built target jpeg-static
Scanning dependencies of target cjpeg-static
[ 28%] Building C object CMakeFiles/cjpeg-static.dir/cjpeg.c.obj
cjpeg.c
[ 28%] Building C object CMakeFiles/cjpeg-static.dir/cdjpeg.c.obj
cdjpeg.c
[ 29%] Building C object CMakeFiles/cjpeg-static.dir/rdgif.c.obj
rdgif.c
[ 29%] Building C object CMakeFiles/cjpeg-static.dir/rdppm.c.obj
rdppm.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\rdppm.c(120): warning C4018: “>”: 有符号/无符号不匹配
[ 30%] Building C object CMakeFiles/cjpeg-static.dir/rdswitch.c.obj
rdswitch.c
[ 30%] Building C object CMakeFiles/cjpeg-static.dir/rdbmp.c.obj
rdbmp.c
[ 31%] Building C object CMakeFiles/cjpeg-static.dir/rdtarga.c.obj
rdtarga.c
Linking C executable cjpeg-static.exe
[ 31%] Built target cjpeg-static
Scanning dependencies of target djpeg-static
[ 31%] Building C object CMakeFiles/djpeg-static.dir/djpeg.c.obj
djpeg.c
[ 32%] Building C object CMakeFiles/djpeg-static.dir/cdjpeg.c.obj
cdjpeg.c
[ 32%] Building C object CMakeFiles/djpeg-static.dir/rdcolmap.c.obj
rdcolmap.c
[ 33%] Building C object CMakeFiles/djpeg-static.dir/rdswitch.c.obj
rdswitch.c
[ 33%] Building C object CMakeFiles/djpeg-static.dir/wrgif.c.obj
wrgif.c
[ 34%] Building C object CMakeFiles/djpeg-static.dir/wrppm.c.obj
wrppm.c
[ 34%] Building C object CMakeFiles/djpeg-static.dir/wrbmp.c.obj
wrbmp.c
[ 34%] Building C object CMakeFiles/djpeg-static.dir/wrtarga.c.obj
wrtarga.c
Linking C executable djpeg-static.exe
[ 34%] Built target djpeg-static
Scanning dependencies of target jpegtran-static
[ 34%] Building C object CMakeFiles/jpegtran-static.dir/jpegtran.c.obj
jpegtran.c
[ 35%] Building C object CMakeFiles/jpegtran-static.dir/cdjpeg.c.obj
cdjpeg.c
[ 35%] Building C object CMakeFiles/jpegtran-static.dir/rdswitch.c.obj
rdswitch.c
[ 35%] Building C object CMakeFiles/jpegtran-static.dir/transupp.c.obj
transupp.c
Linking C executable jpegtran-static.exe
[ 35%] Built target jpegtran-static
Scanning dependencies of target rdjpgcom
[ 36%] Building C object CMakeFiles/rdjpgcom.dir/rdjpgcom.c.obj
rdjpgcom.c
Linking C executable rdjpgcom.exe
[ 36%] Built target rdjpgcom
Scanning dependencies of target turbojpeg
[ 37%] Building C object CMakeFiles/turbojpeg.dir/turbojpeg.c.obj
turbojpeg.c
[ 37%] Building C object CMakeFiles/turbojpeg.dir/transupp.c.obj
transupp.c
[ 37%] Building C object CMakeFiles/turbojpeg.dir/jdatadst-tj.c.obj
jdatadst-tj.c
[ 38%] Building C object CMakeFiles/turbojpeg.dir/jdatasrc-tj.c.obj
jdatasrc-tj.c
Linking C shared library turbojpeg.dll
正在创建库 turbojpeg.lib 和对象 turbojpeg.exp
[ 38%] Built target turbojpeg
Scanning dependencies of target tjbench
[ 39%] Building C object CMakeFiles/tjbench.dir/tjbench.c.obj
tjbench.c
[ 39%] Building C object CMakeFiles/tjbench.dir/bmp.c.obj
bmp.c
[ 40%] Building C object CMakeFiles/tjbench.dir/tjutil.c.obj
tjutil.c
[ 40%] Building C object CMakeFiles/tjbench.dir/rdbmp.c.obj
rdbmp.c
[ 40%] Building C object CMakeFiles/tjbench.dir/rdppm.c.obj
rdppm.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\rdppm.c(120): warning C4018: “>”: 有符号/无符号不匹配
[ 41%] Building C object CMakeFiles/tjbench.dir/wrbmp.c.obj
wrbmp.c
[ 41%] Building C object CMakeFiles/tjbench.dir/wrppm.c.obj
wrppm.c
Linking C executable tjbench.exe
[ 41%] Built target tjbench
Scanning dependencies of target turbojpeg-static
[ 41%] Building C object CMakeFiles/turbojpeg-static.dir/jcapimin.c.obj
jcapimin.c
[ 42%] Building C object CMakeFiles/turbojpeg-static.dir/jcapistd.c.obj
jcapistd.c
[ 42%] Building C object CMakeFiles/turbojpeg-static.dir/jccoefct.c.obj
jccoefct.c
[ 43%] Building C object CMakeFiles/turbojpeg-static.dir/jccolor.c.obj
jccolor.c
[ 43%] Building C object CMakeFiles/turbojpeg-static.dir/jcdctmgr.c.obj
jcdctmgr.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\jcdctmgr.c(187): warning C4146: 一元负运算符应用于无符号类型,结果仍为无符号类型
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\jcdctmgr.c(187): warning C4307: “*”: 整型常量溢出
[ 43%] Building C object CMakeFiles/turbojpeg-static.dir/jchuff.c.obj
jchuff.c
[ 44%] Building C object CMakeFiles/turbojpeg-static.dir/jcinit.c.obj
jcinit.c
[ 44%] Building C object CMakeFiles/turbojpeg-static.dir/jcmainct.c.obj
jcmainct.c
[ 45%] Building C object CMakeFiles/turbojpeg-static.dir/jcmarker.c.obj
jcmarker.c
[ 45%] Building C object CMakeFiles/turbojpeg-static.dir/jcmaster.c.obj
jcmaster.c
[ 46%] Building C object CMakeFiles/turbojpeg-static.dir/jcomapi.c.obj
jcomapi.c
[ 46%] Building C object CMakeFiles/turbojpeg-static.dir/jcparam.c.obj
jcparam.c
[ 46%] Building C object CMakeFiles/turbojpeg-static.dir/jcphuff.c.obj
jcphuff.c
[ 47%] Building C object CMakeFiles/turbojpeg-static.dir/jcprepct.c.obj
jcprepct.c
[ 47%] Building C object CMakeFiles/turbojpeg-static.dir/jcsample.c.obj
jcsample.c
[ 48%] Building C object CMakeFiles/turbojpeg-static.dir/jctrans.c.obj
jctrans.c
[ 48%] Building C object CMakeFiles/turbojpeg-static.dir/jdapimin.c.obj
jdapimin.c
[ 49%] Building C object CMakeFiles/turbojpeg-static.dir/jdapistd.c.obj
jdapistd.c
[ 49%] Building C object CMakeFiles/turbojpeg-static.dir/jdatadst.c.obj
jdatadst.c
[ 49%] Building C object CMakeFiles/turbojpeg-static.dir/jdatasrc.c.obj
jdatasrc.c
[ 50%] Building C object CMakeFiles/turbojpeg-static.dir/jdcoefct.c.obj
jdcoefct.c
[ 50%] Building C object CMakeFiles/turbojpeg-static.dir/jdcolor.c.obj
jdcolor.c
[ 51%] Building C object CMakeFiles/turbojpeg-static.dir/jddctmgr.c.obj
jddctmgr.c
[ 51%] Building C object CMakeFiles/turbojpeg-static.dir/jdhuff.c.obj
jdhuff.c
[ 52%] Building C object CMakeFiles/turbojpeg-static.dir/jdinput.c.obj
jdinput.c
[ 52%] Building C object CMakeFiles/turbojpeg-static.dir/jdmainct.c.obj
jdmainct.c
[ 52%] Building C object CMakeFiles/turbojpeg-static.dir/jdmarker.c.obj
jdmarker.c
[ 53%] Building C object CMakeFiles/turbojpeg-static.dir/jdmaster.c.obj
jdmaster.c
[ 53%] Building C object CMakeFiles/turbojpeg-static.dir/jdmerge.c.obj
jdmerge.c
[ 54%] Building C object CMakeFiles/turbojpeg-static.dir/jdphuff.c.obj
jdphuff.c
[ 54%] Building C object CMakeFiles/turbojpeg-static.dir/jdpostct.c.obj
jdpostct.c
[ 55%] Building C object CMakeFiles/turbojpeg-static.dir/jdsample.c.obj
jdsample.c
[ 55%] Building C object CMakeFiles/turbojpeg-static.dir/jdtrans.c.obj
jdtrans.c
[ 55%] Building C object CMakeFiles/turbojpeg-static.dir/jerror.c.obj
jerror.c
[ 56%] Building C object CMakeFiles/turbojpeg-static.dir/jfdctflt.c.obj
jfdctflt.c
[ 56%] Building C object CMakeFiles/turbojpeg-static.dir/jfdctfst.c.obj
jfdctfst.c
[ 57%] Building C object CMakeFiles/turbojpeg-static.dir/jfdctint.c.obj
jfdctint.c
[ 57%] Building C object CMakeFiles/turbojpeg-static.dir/jidctflt.c.obj
jidctflt.c
[ 58%] Building C object CMakeFiles/turbojpeg-static.dir/jidctfst.c.obj
jidctfst.c
[ 58%] Building C object CMakeFiles/turbojpeg-static.dir/jidctint.c.obj
jidctint.c
[ 58%] Building C object CMakeFiles/turbojpeg-static.dir/jidctred.c.obj
jidctred.c
[ 59%] Building C object CMakeFiles/turbojpeg-static.dir/jquant1.c.obj
jquant1.c
[ 59%] Building C object CMakeFiles/turbojpeg-static.dir/jquant2.c.obj
jquant2.c
[ 60%] Building C object CMakeFiles/turbojpeg-static.dir/jutils.c.obj
jutils.c
[ 60%] Building C object CMakeFiles/turbojpeg-static.dir/jmemmgr.c.obj
jmemmgr.c
[ 61%] Building C object CMakeFiles/turbojpeg-static.dir/jmemnobs.c.obj
jmemnobs.c
[ 61%] Building C object CMakeFiles/turbojpeg-static.dir/jaricom.c.obj
jaricom.c
[ 61%] Building C object CMakeFiles/turbojpeg-static.dir/jcarith.c.obj
jcarith.c
[ 62%] Building C object CMakeFiles/turbojpeg-static.dir/jdarith.c.obj
jdarith.c
[ 62%] Building C object CMakeFiles/turbojpeg-static.dir/simd/jsimd_x86_64.c.obj
jsimd_x86_64.c
[ 63%] Building C object CMakeFiles/turbojpeg-static.dir/turbojpeg.c.obj
turbojpeg.c
[ 63%] Building C object CMakeFiles/turbojpeg-static.dir/transupp.c.obj
transupp.c
[ 64%] Building C object CMakeFiles/turbojpeg-static.dir/jdatadst-tj.c.obj
jdatadst-tj.c
[ 64%] Building C object CMakeFiles/turbojpeg-static.dir/jdatasrc-tj.c.obj
jdatasrc-tj.c
Linking C static library turbojpeg-static.lib
[ 64%] Built target turbojpeg-static
Scanning dependencies of target tjbench-static
[ 65%] Building C object CMakeFiles/tjbench-static.dir/tjbench.c.obj
tjbench.c
[ 65%] Building C object CMakeFiles/tjbench-static.dir/bmp.c.obj
bmp.c
[ 66%] Building C object CMakeFiles/tjbench-static.dir/tjutil.c.obj
tjutil.c
[ 66%] Building C object CMakeFiles/tjbench-static.dir/rdbmp.c.obj
rdbmp.c
[ 66%] Building C object CMakeFiles/tjbench-static.dir/rdppm.c.obj
rdppm.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\rdppm.c(120): warning C4018: “>”: 有符号/无符号不匹配
[ 67%] Building C object CMakeFiles/tjbench-static.dir/wrbmp.c.obj
wrbmp.c
[ 67%] Building C object CMakeFiles/tjbench-static.dir/wrppm.c.obj
wrppm.c
Linking C executable tjbench-static.exe
[ 67%] Built target tjbench-static
Scanning dependencies of target tjunittest
[ 68%] Building C object CMakeFiles/tjunittest.dir/tjunittest.c.obj
tjunittest.c
[ 68%] Building C object CMakeFiles/tjunittest.dir/tjutil.c.obj
tjutil.c
Linking C executable tjunittest.exe
[ 68%] Built target tjunittest
Scanning dependencies of target tjunittest-static
[ 69%] Building C object CMakeFiles/tjunittest-static.dir/tjunittest.c.obj
tjunittest.c
[ 69%] Building C object CMakeFiles/tjunittest-static.dir/tjutil.c.obj
tjutil.c
Linking C executable tjunittest-static.exe
[ 69%] Built target tjunittest-static
Scanning dependencies of target wrjpgcom
[ 70%] Building C object CMakeFiles/wrjpgcom.dir/wrjpgcom.c.obj
wrjpgcom.c
Linking C executable wrjpgcom.exe
[ 70%] Built target wrjpgcom
Scanning dependencies of target jpeg
[ 70%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcapimin.c.obj
jcapimin.c
[ 71%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcapistd.c.obj
jcapistd.c
[ 71%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jccoefct.c.obj
jccoefct.c
[ 72%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jccolor.c.obj
jccolor.c
[ 72%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcdctmgr.c.obj
jcdctmgr.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\jcdctmgr.c(187): warning C4146: 一元负运算符应用于无符号类型,结果仍为无符号类型
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\jcdctmgr.c(187): warning C4307: “*”: 整型常量溢出
[ 72%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jchuff.c.obj
jchuff.c
[ 73%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcinit.c.obj
jcinit.c
[ 73%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcmainct.c.obj
jcmainct.c
[ 74%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcmarker.c.obj
jcmarker.c
[ 74%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcmaster.c.obj
jcmaster.c
[ 75%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcomapi.c.obj
jcomapi.c
[ 75%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcparam.c.obj
jcparam.c
[ 75%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcphuff.c.obj
jcphuff.c
[ 76%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcprepct.c.obj
jcprepct.c
[ 76%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcsample.c.obj
jcsample.c
[ 77%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jctrans.c.obj
jctrans.c
[ 77%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdapimin.c.obj
jdapimin.c
[ 78%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdapistd.c.obj
jdapistd.c
[ 78%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdatadst.c.obj
jdatadst.c
[ 78%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdatasrc.c.obj
jdatasrc.c
[ 79%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdcoefct.c.obj
jdcoefct.c
[ 79%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdcolor.c.obj
jdcolor.c
[ 80%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jddctmgr.c.obj
jddctmgr.c
[ 80%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdhuff.c.obj
jdhuff.c
[ 81%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdinput.c.obj
jdinput.c
[ 81%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdmainct.c.obj
jdmainct.c
[ 82%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdmarker.c.obj
jdmarker.c
[ 82%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdmaster.c.obj
jdmaster.c
[ 82%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdmerge.c.obj
jdmerge.c
[ 83%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdphuff.c.obj
jdphuff.c
[ 83%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdpostct.c.obj
jdpostct.c
[ 84%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdsample.c.obj
jdsample.c
[ 84%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdtrans.c.obj
jdtrans.c
[ 85%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jerror.c.obj
jerror.c
[ 85%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jfdctflt.c.obj
jfdctflt.c
[ 85%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jfdctfst.c.obj
jfdctfst.c
[ 86%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jfdctint.c.obj
jfdctint.c
[ 86%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jidctflt.c.obj
jidctflt.c
[ 87%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jidctfst.c.obj
jidctfst.c
[ 87%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jidctint.c.obj
jidctint.c
[ 88%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jidctred.c.obj
jidctred.c
[ 88%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jquant1.c.obj
jquant1.c
[ 88%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jquant2.c.obj
jquant2.c
[ 89%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jutils.c.obj
jutils.c
[ 89%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jmemmgr.c.obj
jmemmgr.c
[ 90%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jmemnobs.c.obj
jmemnobs.c
[ 90%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jaricom.c.obj
jaricom.c
[ 91%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jcarith.c.obj
jcarith.c
[ 91%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/jdarith.c.obj
jdarith.c
[ 91%] Building C object sharedlib/CMakeFiles/jpeg.dir/__/simd/jsimd_x86_64.c.obj
jsimd_x86_64.c
Linking C shared library jpeg62.dll
正在创建库 jpeg.lib 和对象 jpeg.exp
[ 91%] Built target jpeg
Scanning dependencies of target cjpeg
[ 91%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/cjpeg.c.obj
cjpeg.c
[ 91%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/cdjpeg.c.obj
cdjpeg.c
[ 92%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/rdgif.c.obj
rdgif.c
[ 92%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/rdppm.c.obj
rdppm.c
D:\os.package\cpp\libjpeg\libjpeg-turbo-1.4.2\rdppm.c(120): warning C4018: “>”: 有符号/无符号不匹配
[ 93%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/rdswitch.c.obj
rdswitch.c
[ 93%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/rdbmp.c.obj
rdbmp.c
[ 94%] Building C object sharedlib/CMakeFiles/cjpeg.dir/__/rdtarga.c.obj
rdtarga.c
Linking C executable cjpeg.exe
[ 94%] Built target cjpeg
Scanning dependencies of target djpeg
[ 94%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/djpeg.c.obj
djpeg.c
[ 94%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/cdjpeg.c.obj
cdjpeg.c
[ 95%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/rdcolmap.c.obj
rdcolmap.c
[ 95%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/rdswitch.c.obj
rdswitch.c
[ 96%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/wrgif.c.obj
wrgif.c
[ 96%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/wrppm.c.obj
wrppm.c
[ 97%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/wrbmp.c.obj
wrbmp.c
[ 97%] Building C object sharedlib/CMakeFiles/djpeg.dir/__/wrtarga.c.obj
wrtarga.c
Linking C executable djpeg.exe
[ 97%] Built target djpeg
Scanning dependencies of target jcstest
[ 98%] Building C object sharedlib/CMakeFiles/jcstest.dir/__/jcstest.c.obj
jcstest.c
Linking C executable jcstest.exe
[ 98%] Built target jcstest
Scanning dependencies of target jpegtran
[ 98%] Building C object sharedlib/CMakeFiles/jpegtran.dir/__/jpegtran.c.obj
jpegtran.c
[ 99%] Building C object sharedlib/CMakeFiles/jpegtran.dir/__/cdjpeg.c.obj
cdjpeg.c
[ 99%] Building C object sharedlib/CMakeFiles/jpegtran.dir/__/rdswitch.c.obj
rdswitch.c
[100%] Building C object sharedlib/CMakeFiles/jpegtran.dir/__/transupp.c.obj
transupp.c
Linking C executable jpegtran.exe
[100%] Built target jpegtran
Install the project...
-- Install configuration: "RELEASE"
-- Installing: c:/libjpeg-turbo64/lib/turbojpeg.lib
-- Installing: c:/libjpeg-turbo64/bin/turbojpeg.dll
-- Installing: c:/libjpeg-turbo64/bin/tjbench.exe
-- Installing: c:/libjpeg-turbo64/lib/turbojpeg-static.lib
-- Up-to-date: c:/libjpeg-turbo64/include/turbojpeg.h
-- Installing: c:/libjpeg-turbo64/lib/jpeg-static.lib
-- Installing: c:/libjpeg-turbo64/bin/rdjpgcom.exe
-- Installing: c:/libjpeg-turbo64/bin/wrjpgcom.exe
-- Up-to-date: c:/libjpeg-turbo64/doc/README
-- Up-to-date: c:/libjpeg-turbo64/doc/README-turbo.txt
-- Up-to-date: c:/libjpeg-turbo64/doc/example.c
-- Up-to-date: c:/libjpeg-turbo64/doc/libjpeg.txt
-- Up-to-date: c:/libjpeg-turbo64/doc/structure.txt
-- Up-to-date: c:/libjpeg-turbo64/doc/usage.txt
-- Up-to-date: c:/libjpeg-turbo64/doc/wizard.txt
-- Installing: c:/libjpeg-turbo64/include/jconfig.h
-- Up-to-date: c:/libjpeg-turbo64/include/jerror.h
-- Up-to-date: c:/libjpeg-turbo64/include/jmorecfg.h
-- Up-to-date: c:/libjpeg-turbo64/include/jpeglib.h
-- Installing: c:/libjpeg-turbo64/lib/jpeg.lib
-- Installing: c:/libjpeg-turbo64/bin/jpeg62.dll
-- Installing: c:/libjpeg-turbo64/bin/cjpeg.exe
-- Installing: c:/libjpeg-turbo64/bin/djpeg.exe
-- Installing: c:/libjpeg-turbo64/bin/jpegtran.exe
编译好的版本默认是安装到c:/libjpeg-turbo
(编译64位版本时是c:/libjpeg-turbo64
),如果要安装到其他路径,可以在上一步生成Makefile的时候,添加命令行参数 -DCMAKE_INSTALL_PREFIX=<指定路径>
用来指定安装路径。