zoukankan      html  css  js  c++  java
  • 基于vlc sdk的二次开发--环境搭建、编译

    前言

      关于 搭建、编译VLC,不同的平台有不同的方法,可以参考wiki
      其中在windows下编译VLC有两种方式,MSYS+MinGW和CygWin。通过测试,最后决定采用MSYS+MinGW搭建VLC编译环境(多次测试, 通过且不需要额外的修改)。
      详细步骤请参考 wiki

    注:文本编辑建议使用notepad2替代windows原有的notepad,并在保存文件前选择“文件->行末符号->Unix(换行)”

      搭建过程所需要的资料我没上传, 给个快照, 照着下载就是了。

    vlc搭建依赖包1

    vlc搭建依赖包2

    vlc搭建依赖包3

    VLC环境搭建

    1. MinGW Setup
      运行tdm-gcc-4.5.2.exe, 然后Select "Create",install to C:MinGW(默认是C: MinGW32, 记得改成C: MinGW),keep default settings,afterwards check that C:MinGWin is added to windows PATH (参考下图 添加到末尾, 用分号分隔)
      checkv
      解压mingw-utils-0.3.tar, Extract contents to c:MinGW
    2. MSys Setup,运行MSYS-1.0.11.exe,然后:Go through the wizard and install to to default C:Msys1.0(默认是C:msys1.0, 记得改成C:Msys1.0)
      In the command window that opens, answer questions as follows:
      Accept Post Install: [y]
      MinGW Installed? : [y]
      path to MinGW: [c:/MinGW]
      接着安装MSys Developer Toolkit,运行msysDTK-1.0.0.exe,然后Go through the wizard, keeping default values. (默认是C:msys1.0, 记得改成C:Msys1.0)
    3. 将AutoTools and libcrypt,文件夹和Glib and PKG-CONFIG文件夹下面的所有包解压到C:Msys1.0,添加set PKG_CONFIG_PATH=/win32/lib/pkgconfig到C:MSys1.0msys.bat第一行。
    4. Fix libtool search dirs
      Open C:MSys1.0inlibtool and change line 9926 by appending ' /mingw/lib' to the end of 'compiler_lib_search_dirs'. The line should then read : (注: 一定要用notepad2编辑文本,并保存为unix格式)
    compiler_lib_search_dirs="/usr/lib /usr/lib /bin/../lib/gcc-lib/i686-pc-msys/2.95.3-1 /bin/../lib/gcc-lib /usr/lib/gcc-lib/i686-pc-msys/2.95.3-1 /bin/../lib/gcc-lib/i686-pc-msys/2.95.3-1/../../../../i686-pc-msys/lib /usr/lib/gcc-lib/i686-pc-msys/2.95.3-1/../../../../i686-pc-msys/lib /mingw/lib" 
    
    1. 安装lua
      Download the lua tools package from http://www.lua.org/ftp/lua-5.1.4.tar.gz
      Uncompress it in your home folder (C:MSys1.0homeAdministrator)
      run C:MSys1.0msys.bat
      type the following commands:
    cd /home/ Administrator /lua-5.1.4 
    make mingw
    

    This should produce lua.exe, luac.exe and lua51.dll in the src directory. Put these in your /bin with the commands:

    cd src 
    cp *.exe /bin
    cp *.dll /bin
    cd ..  
    
    1. 安装第三方库(已提供最新版contrib-20110711-win32-bin-gcc-4.4.4-runtime-3.17-only.tar.bz2), 解压, 将usr目录下面的win32文件夹拷贝到C:Msys1.0下

    VLC编译

    1. 解压vlc-1.1.11.tar
    2. extract it to C:MSys1.0home Administrator ,rename the vlc-1.1.11 dir to vlc
    3. 编辑configure-msys.sh文件,添加--disable-upnp,类似于下图:
      vlc configure
      然后拷贝configure-msys.sh和configure-common.sh文件到C:Msys1.0homeAdministratorvlcextraspackagewin32下。
    4. Create a new file containing the single line:echoAdministrator
      and save it as C:MSys1.0inwhoami (without any extension)
      Modify configure.ac so that it doesn't call 'hostname -f' as follows:
      open C:MSys1.0homeAdministratorvlcconfigure.ac
      goto search button:
      change it as follows:
      old: AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "hostname -f 2> /dev/null || hostname", [host which ran configure])
      new: AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "hostname", [host which ran configure])
    5. Build VLC
      The build is made exclusively from the command line, so if you closed the prompt at the LUA step, re-execute C:MSy1.0msys.bat, then type the commands as mentioned Bootstrap
    cd vlccp -v /win32/share/aclocal/* m4/cp -v /share/aclocal/* m4/PATH=/win32/bin:$PATH ./bootstrap
    Configure
    
    sh extras/package/win32/configure-msys.sh
    Make (compile)
    

    PATH=/usr/win32/bin:$PATH make -j4 (如果是四核的电脑, 否则相应修改)
    make成功后如果想要生成sdk等文件夹, 可以输入下面命令Create self-contained packages

    Once the compilation is done, build self-contained VLC packages with one of the following "make" commands:

    make package-win32-base

    (This will create a subdirectory named vlc-x.x.x with all the binaries "stripped" without any debugging symbols).

    完!
    2012年5月

  • 相关阅读:
    Socket 编程(二)
    【ASP.NET】:Ckeditor+Fckeditor的使用
    Socket编程(一):建立与客户端的连接并接受数据
    Linux基础系列:常用命令(3)
    linux 命令汇总
    Linux基础系列:常用命令(2)
    Linux基础系列:常用命令(1)
    计算机基础系列三:网络基础
    计算机基础系列二:计算机操作系统
    计算机基础系列一:计算机硬件
  • 原文地址:https://www.cnblogs.com/rongpmcu/p/7661941.html
Copyright © 2011-2022 走看看