• 【FFMPEG】不要试图用msvc来编译ffmpeg


    原文:http://blog.csdn.net/hn756si/article/details/41147497


    出于学习目的,想建一个vs2010工程来编译ffmpeg(http://www.ffmpeg.org/),但是由于意义不大,并且工作量太大放弃了。原因如下:


    1、一些unix平台相关的头文件、库的依赖。这个是最好解决的,对应替换下就行了。

    2、.C99支持,MSVC不支持C99,而ffmpeg需要它。比如msvc编译c文件,不能inline一个函数;还有c99怪异的初始化语法。这个工作量有些大,但是并不是不能解决的。因为对应的需要修改的语法就那么几种,花一两个小时就可以搞定。

    3、许多ffmpeg中的汇编函数要求栈对齐,只有gcc4.2能保证为32位X86机上产生兼容代码,而对64位机总是需要对齐(并非只针对汇编代码)

          这个就有些困难了,因为即便编译成功,也会因为对齐原因而造成运行错误。

    4、ffmeg中大多数的汇编代码都是内嵌汇编,所以,编译器必须支持AT&T格式才能正常编译。

          虽然俺学过一点汇编,但是仅停留在会看简单语法的阶段,真正用来写东西就完全不行了。汇编报了语法错误连怎么改都不知道。

    5、最主要的,由于ffmpeg是纯c的库,所以即便是mingw编译的dll也可以正常的被msvc使用。(这点上也可以看出C语言比c++的优越性,越底层越明显)


          综上,用msvc来编译ffmpeg是没有任何意义的。即便想研究代码也用不着绑到msvc的车上。

  • 相关阅读:
    spark学习
    推荐系统-摘录
    matplotlib安装问题解决
    秒杀系统分析
    大数据常用启动命令
    推荐系统简介
    java面试-JVM内存结构
    推荐算法-基于内容的推荐
    推荐算法-基于模型的协同过滤
    监督学习之模型评估与选择
  • 原文地址:https://www.cnblogs.com/huty/p/8517638.html
Copyright © 2020-2023  润新知