win10 vs2015 libyuv编译,支持xp

01 环境

win10 企业版本(10.0.14393)
vs2015、git、python2.7.6、vpn(下载源码需要翻墙)。

02 下载源码

注意:开启vpn。

D:\git>git clone https://chromium.googlesource.com/libyuv/libyuv
Cloning into 'libyuv'...
remote: Total 16062 (delta 13072), reused 16062 (delta 13072)
Receiving objects: 100% (16062/16062), 4.35 MiB | 3.00 KiB/s, done.
Resolving deltas: 100% (13072/13072), done.
Checking connectivity... done.

D:\git>cd libyuv

D:\git\libyuv>git branch -vv
* master 288bfbe [origin/master] Add MSA optimized remaining scale row functions

D:\git\libyuv>git tag

经过git tag 和 git branch -vv git branch -a 查看,代码没有分支、tag之类的,认为下载下来的当前master是稳定版本。

03 使用CMake生成vs工程文件

03.01 配置CMake参数

打开CMake GUI工具。
指定源码位置:D:/git/libyuv
cmake文件生成位置:D:/git/libyuv/build/x86

点击Configure按钮。
选择:Visual Studio 14 2015
选择:Use default native compilers
这里写图片描述

03.02 解决CMake配置错误

直接使用CMake3.4.0编译出错,如下:

CMake Warning (dev) at CMakeLists.txt:103 (if): Policy CMP0064 is
not set: Support new TEST if() operator. Run “cmake –help-policy
CMP0064” for policy details. Use the cmake_policy command to set
the policy and suppress this warning.

TEST will be interpreted as an operator when the policy is set to
NEW. Since the policy is not set the OLD behavior will be used. This
warning is for project developers. Use -Wno-dev to suppress it.
这里写图片描述

修改CMakeLists.txt文件。把最小版本要求由2.8修改为3.4.
cmake_minimum_required(VERSION 2.8)==>cmake_minimum_required(VERSION 3.2)

03.03 再次使用CMake生成工程文件。

修改CMakeLists.txt文件最小要求版本后,再次点击CMake Gui的Configure 和 Generate 按钮。正确生成vs工程文件。
这里写图片描述

03.04 修改vs2015工程配置,支持xp系统。

默认生成的配置文件,使用的平台工具集是v140,如果需要支持xp系统。需要把平台工具集修改为v140_xp,最好把目标平台版本 也清空。
注意:这里需要针对每个工程项目的每个配置、平台做修改。
[配置][平台]配置属性==>常规==>平台工具集==>v140_xp
[配置][平台]配置属性==>常规==>目标平台版本==>清空内容
这里写图片描述

03.05 生成文件

编译后的文件目录
D:\git\libyuv\build\x86\Debug
convert.exe
yuv.lib
D:\git\libyuv\build\x86\Release
convert.exe
yuv.lib

03.06 生成vs2015 x64位的配置工程文件

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值