为了账号安全,请及时绑定邮箱和手机立即绑定

如何用vs08编译ffmpeg / 蓝讯

如何用vs08编译ffmpeg / 蓝讯

明月笑刀无情 2018-10-09 05:05:23
查看完整描述

1 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

放到MSYS环境里配置,生成config.h文件。mingw gcc是能顺利编译通过整个项目的,并生成最新版的ffmpeg。
建立vc6工程,把相关代码都加入到工程中。由于在vc生成的obj都在一个目录下,所以需要修改文件名,让其不重名。
安装intel compiler 11编译器,单独提取其icl.exe及相关include目录,替换掉vc6自带的cl.exe, 在工程设置里加上/Qstd=c99,用于支持C99语法。
安装intel compiler 10编译器,单独提取lib目录,因为此版本调试库的结构能完美支持vc6的调试信息。
在vc6的options里设置include/exe/lib查找目录,指向intel编译器。
开始修改代码,添加C99的相关linux头文件, 用于支持vc6, (unistd.h, stdint.h, inttypes.h, getopt.h)
添加C99和linux的相关实现代码,ffmpeg需要用到: getopt_long, strtoll, gettimeofday, atoll, usleep等
修改windows的相关兼容代码,GetWindowLongPtr -> GetWindowLong, GWLP_USERDATA
去除硬件加速libavcodec代码,和依赖库代码。选择所需要的模块,修改相关的allcodec.c, alldevices.c, allfilters.c, allformats.c
加上链接库,sdl.lib, winmm.lib, dxguid.lib, wsock32.lib
在os_support.c里,把<winsock2.h>移动到文件最前面。
如果是ffmpeg, 已经能顺利编译了。如果是ffplay,还需要编译静态sdl, 并链接。

查看完整回答
反对 回复 2018-10-15
  • 1 回答
  • 0 关注
  • 743 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信