0基础之MLT库在windows下的编译

MLT的windows编译

注:linux下面的编译就不说了,比windows简单太多了, 按照官网的方法直接make就OK,此处给出链接是一个windows下面的编译过程,MLT build on windows。既然官网也有了,那么为什么还写这篇文章呢,主要是对于没接触过mingw和MLT的人来说 看官网不一定看得弄,它上面写的很模糊,而且很多错误官网也没指出,因此就编译这块我大概花了1周的时间,因此整理出来让各位新同学少走绕路。

  • 环境的准备
    1 首先安装mingw,在线安装,最好默认在它自己的安装目录,c:/MinGW下面,然后按照下面的操作
    这里写图片描述
    安装mingw后会有MinGWInstaller的安装图标,运行后在Basic Setup下面选择右边标记为绿色的选项,右键框 然后选择mark for installation,选择好之后点击apply changes,就会自动安装所需要的库
    这里写图片描述
    然后选择all packages项,勾选mingw32-bzip2、mingw32-gettext 、mingw32-libbz2、mingw32-libiconv、mingw32-libintl、mingw32-libisl、mingw32-libltdl、mingw32-libpthreadgc,mingw32-libz、mingw32-pthreads-w32对应的msys-相关的也勾上,并按上面的操作再次下载
    2 安装Cmake,先放这儿,后面的freior需要用到
    3 下载PKG-CONFIG的windows的二进制程序,然后解压把它bin目录下的pkg-config.exe放到C:/MingW/bin下面
    4 运行msys.bat生成home目录,需要先运行bat才能自动生成home目录,里面并会自动生成你的用户目录,我的就是C:\MinGW\msys\1.0\home\kf,然后在kf(用户)目录下面创建bin,build,include,lib,src 5个目录
    这里写图片描述
    这里写图片描述
    share目录是后面生成的 不用自己创建
    5 下载fmmpeg
    这里写图片描述
    把这2个目录 include 和lib里面的内容分别全部复制到上面/home/kf/include、/home/kf/lib对应的目录
    再下载ffmpeg-win32-shared 二进制文件,然后把它里面的bin目录下面所有的文件复制到/home/kf/build目录下面,并在build目录下面创建share目录,在share目录下面再创建ffmpeg目录,C:\MinGW\msys\1.0\home\kf\build\share\ffmpeg,然后把ffmpeg-win32-shared下面的presets里面的内容全部复制到C:\MinGW\msys\1.0\home\kf\build\share\ffmpeg目录下面
    这里写图片描述
    6 下载SDL1.2和SDL2.0 for mingw 别下载错了,2个都需要,先说第一个SDL1.2,SDL2.0后面编译时需要。下载好SLD1.2之后就把它解压到C:\MinGW\msys\1.0\home\kf\src目录里面,再打开msys.bat进入到src\SDL-1.2.15,然后执行下面的操作
    这里写图片描述
    执行make native后就会再/home/kf/include里面生成需要头文件,并且会在C:\MinGW\msys\1.0\bin目录下生成SDL.dll,把该dll复制到/home/kf/build目录下面

    7 下载dlfcn-win32,同样把它解压到/home/kf/src目录下面,然后进入该目录执行以下操作
    ./configure –enable-shared
    make all install 等待执行完成后会再C:\MinGW\bin目录下面生成libdl.dll,把该文件复制到/home/kf/build目录下面
    8 下载libxml2和iconv,2个文件解压后把bin、lib、include三个目录的内容全部复制到C:\MinGW\msys\1.0对应的bin、lib、和include的目录。然后再C:\MinGW\msys\1.0\home\kf\lib目录下面创建pkgconfig目录,并再下面创建一个libxml-2.0.pc文件,内容填写下面:

prefix=/ignore 
exec_prefix=${prefix} 
libdir=${exec_prefix}/lib 
includedir=${prefix}/include 

Name: libXML 
Version: 2.6.22 
Description: libXML library version 2. 
Requires: 
Libs: -L${libdir} -lxml2 -lz 
Cflags: -I${includedir} 

最后把C:\MinGW\msys\1.0\bin目录下面的libxml2.dll、iconv.dll和zlib1.dll复制到/home/kf/build目录下面

9 下载gtk+-bundle最好选择2.2的版本,我当时选的最新版本没编译通过
然后解压目录,把它bin目录下面的所有dll全部复制到/home/kf/build目录下
注意:如果编译make all install的时候出现
这里写图片描述
这个的时候你需要在gtk的bin目录下面C:\MinGW\msys\1.0\home\kf\src\gtk+-bundle_2.24.10-20120208_win32\bin 把它的libglib-2.0-0.dll复制到C:\MinGW\msys\1.0\bin目录和C:\MinGW\bin目录。
10 下载libsamplerate-0.1.9,解压放入src目录里面,然后用msys.bat命令行进入home/kf/src/libsamplerate-0.1.9,进行一下操作
./configure –prefix=$HOME
make all install
等待执行完成后会在C:\MinGW\msys\1.0\home\kf\bin目录下面生成libsamplerate-0.dll,把该文件复制到/home/kf/build目录下面
10 安装Frei0r
在msys.bat里面进入到/home/kf/src/目录,然后执行,
git clone git://code.dyne.org/frei0r.git
如果没有git命令 那么就需要下载一个Git,怎么安装上百度很多
cd frei0r
mkdir build 创建一个build目录在里面,用来存放编译Freior的内容
cd build 进入该目录
cmake -G “MSYS Makefiles” -DCMAKE_INSTALL_PREFIX=$HOME ..
最好复制这句,上面HOME后面包含了 .. 上级目录
make all install 上面会执行一段时间,最后就开始编译
最后在这个目录生成C:\MinGW\msys\1.0\home\kf\src\frei0r\include的frei0r.h头文件复制到/home/kf/include下面
把C:\MinGW\msys\1.0\home\kf\lib目录下面的freiOr-1目录复制到C:\MinGW\msys\1.0\home\kf\build\lib目录下,没有lib就创建一个
11 下载SOX,解压到/home/kf/src目录下面,并使用msys.bat进入到该目录/home/kf/src/sox-14.3.1,然后执行一下操作

./configure –prefix=$HOME –without-ffmpeg –disable-symlinks –disable-gomp –without-magic –without-png –without-ladspa
make all install

最后把/home/kf/bin下面的libsox-1.dll复制到/home/kf/build下面
12 下载Qt4以上的版本,设置环境变量,自行百度,然后把QtCore4.dll,QtGui4.dll,QtSvg4.dll ,QtXml4.dll如果是qt5则选择对应的dll放入到/home/kf/bin目录下面
13 下载Jack,二进制的exe文件进行安装,安装目录最好放置它自己的默认目录C:\Program Files (x86)\Jack,安装完成后把它includes下面的jack目录复制到/home/kf/include下面。C:\Program Files (x86)\Jack\lib把这个里面的内容全部复制到/home/kf/lib目录下面。然后C:\Windows\SysWOW64(System32–32位系统)在这个目录下面找到libjack.dll and libjackserver.dll2个动态库复制并放到/home/kf/build目录下面。然后在/home/kf/lib/pkconfig/目录下面创建jack.pc文件,内容填写如下

prefix=/ignore 
exec_prefix=${prefix} 
libdir=${prefix}/lib 
includedir=${prefix}/include 

Name: jack 
Description: the Jack Audio Connection Kit: a low-latency synchronous callback-based media server 
Version: 1.9.6 
Libs: -L${libdir} -ljack -ljackserver 
Cflags: -I${includedir} 

然后打开浏览器输入:http://www.ladspa.org/ladspa_sdk/ladspa.h.txt ,复制里面的所有内容,在/home/kf/include目录下创建ladspa.h头文件,把上面的复制内容粘贴进去
下载Audacity LADSPA ,然后安装默认路径,找到她的C:\Program Files (x86)\Audacity\Plug-Ins目录下面所有的东西,复制到/home/kf/build/lib/ladspa目录下,没有目录就创建一个
14 下载liboil,解压到/home/kf/src目录里面
cd liboil-0.3.17
configure –prefix=$HOME
make all install
执行上面的操作,然后在/home/kf/bin下面生成liboil.dll把它复制到/home/kf/build目录下面
15 下载swfdec,解压到/home/kf/src
cd swfdec-0.9.2
./configure –prefix=$HOME –enable-gtk=no –enable-gstreamer=no –with-audio=none
make all install
然后把它生成的dll复制到/home/kf/build目录下面


OK,以上是所有的环境搭建,有空再写下面的,以上的步骤如果出现问题可以留言,一起交流

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值