• Mediainfo的编译安装(suse)


    Mediainfo的编译安装(suse)
    
    Mediainfo 依赖libz和libzen以及libmediainfo,编译顺序为: libz, libzen, libmediainfo
    (1)编译libz(suse 11已经有了这个库,跳过此步)
    ./config;
    make;
    make install;
    执行完上面的命令,会在/usr/local/lib/目录 下生成 libz.a 在/usr/local/include目录 下生成zlib.h(这个文件移植没用到)
    
    (2)编译libzen
    1.下载zenlib http://sourceforge.net/projects/zenlib/files/
    2.根据ZenLib/Project/GNU/libzen_contrib.spec文件中的描述进行编译,不是所有的命令都要执行,我主要执行了以下命令
    (需要安装doxygen ,在ubuntu上 sudo apt-get install doxygen)
     (autogen这个命令需要安装automake libtool ,在ubuntu上 sudo apt-get install automake;sudo apt-get install libtool)
    cd ./Source/Doc;
    doxygen Doxyfile;
    cd -;
    cd ./Project/GNU/Library
    chmod +x autogen;
    ./autogen;
    ./configure  --enable-shared;
    make clean;
    make;
    make install;
    ls -lrt /usr/local/lib/libzen*;
    3.如果上面的步骤执行成功,应该看到以下5个函数库:libzen.a   libzen.la    libzen.so   libzen.so.0   libzen.so.0.0  5个函数库
    
    (3)编译libmediainfo
    1.下载 http://sourceforge.net/projects/mediainfo/files/source/libmediainfo/
    2.根据MediaInfoLib/Project/GNU/libmediainfo.spec文件中的描述进行编译,不是所有的命令都要执行,我主要执行了以下命令
    cd ./Source/Doc/;
    doxygen Doxyfile;
    cd -;
    cd ./Project/GNU/Library;
    chmod +x autogen;
    ./autogen;
    ./configure --enable-shared;
    make clean;
    make;
    make install;
    ls -lrt /usr/local/lib/libmediainfo*
    3.如果上面的步骤执行成功,应该看到以下2个函数库:libmediainfo.a libmediainfo.la
    
    (4)编译mediainfo
    1.下载 http://sourceforge.net/projects/mediainfo/files/source/mediainfo/
    Mediainfo有两个版本:CLI命令行版本和GUI图形界面版本
    2. MediaInfo/Project/GNU/mediainfo.spec文档中描述的有关CLI的部分进行编译
    cd ./Project/GNU/CLI;
    chmod +x autogen;
    ./autogen;
    ./configure;
    make;
    make install;
    ls -lrt /usr/local/bin/mediainfo*
    3.如果上面的步骤执行成功,应该看到mediainfo程序
    
    可能遇到的问题:
    1. 系统自带zlib,于是开始时没有重新安装zlib;安装zenlib没有问题,到libmediainfo时死活过不去,遂查看configure.ac发现其中用了相对路径定位zlib和zenlib,于是重来一遍,OK
    2. 可能需要
    export  LD_LIBRARY_PATH=/usr/local/lib (因为linux默认的函数库目录为/lib 和 /usr/lib)
    export  PATH=$PATH:/usr/local/bin
    3. libzen.so.0依赖/usr/lib/libstdc++.so.6 要求版本GLIBCXX-3.4.9或以上,如果你的系统上这个函数库的版本低了,就将libstdc++.so.6.0.13拷到/usr/lib下,并执行命令 ln –fs libstdc++.so.6.0.13  libstdc++.so.6 将libstdc++.so.6链接到新的函数库
    
    本文参考了http://blog.csdn.net/yugong2009/article/details/5875998
    
    
    
    
    
  • 相关阅读:
    有return的情况下try catch finally的执行顺序
    java面试题
    JSTL常用标签
    文件引入路径设置
    JavaScript配合button.onclick()使用总结
    Java NIO vs IO
    如何在Oracle官网下载历史版本JDK
    常量池之String.intern()方法
    MyeclipseJRE版本设置
    JVM常用参数配置
  • 原文地址:https://www.cnblogs.com/liyulong1982/p/2328974.html
Copyright © 2020-2023  润新知