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

Mediainfo的编译安装(suse)的更多相关文章

  1. suse linux编译安装GCC报错

    gcc编译安装过程 1.先安装三个库 gmp mprc mpc 这三个库的源码要到官网去下载 1)安装gmp:首先建立源码同级目录 gmp-build,输入命令,第一次编译不通过,发现缺少一个叫m4的 ...

  2. suse linux 编译安装Apache时报“APR NOT FOUND”的解决方法

    今日编译apache时出错: #./configure --prefix……检查编辑环境时出现: checking for APR... noconfigure: error: APR not fou ...

  3. 【转】linux 编译安装nginx,配置自启动脚本

    linux 编译安装nginx,配置自启动脚本 本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装ng ...

  4. LTMP手动编译安装以及全自动化部署实践(附详细代码)

    大家使用LNMP架构,一般可以理解为Linux Shell为CentOS/RadHat/Fedora/Debian/Ubuntu/等平台安装LNMP(Nginx/MySQL /PHP),LNMPA(N ...

  5. linux 编译安装nginx,配置自启动脚本

    本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装nginx,记录下安装过程: 参照这篇文章:Linu ...

  6. 【转】如何编译安装PHP扩展

    本文参考 一开始安装PHP的时候,我们并不知道需要哪些扩展,所以只有等到我们真正用到的时候才想办法去安装. 安装PHP扩展最简单的办法就是 sudo apt-get install php5-xxx ...

  7. 程序包管理rpm、yum与简单编译安装程序

    Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...

  8. CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境

    CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境 什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/ ...

  9. dbrd 8.4.6 源代码编译安装

    ---------------------------- 0.系统环境 ---------------------------- db01 192.168.50.10 /dev/sdb1 主节点 db ...

随机推荐

  1. Hibernate_day04--HQL多表查询_Hibernate检索策略

    HQL多表查询 Mysql里面多表查询 1 内连接 查的是两个表关联的数据 2 左外连接 查的是左边表所有数据,右边表关联数据 3 右外连接 HQL实现多表查询 Hql多表查询 (1)内连接 (2)左 ...

  2. 论坛模块_版块管理_增删改查&实现上下移动

    论坛模块_版块管理1_增删改查 设计实体Forum.java public class Forum { private Long id; private String name; private St ...

  3. 中文转换成Unicode编码 和 Unicode编码转换为中文

    前几天,遇到一个问题,就是在浏览器地址栏传递中文时,出现乱码,考虑了一下,解决方式有很多,我还是采用了转换编码的方式,将中文转换为Unicode编码,然后再解码成中文,以下是实现的过程,非常简单! p ...

  4. android EditText自动弹出和自动关闭软键盘

    程序进入某个activity直接弹出软键盘,不能直接在OnCreate中设置,必须等View绘制事件完毕才可以弹出,需要用到Timer辅助实现,如果要实现输入的功能,必须让EditText获得焦点. ...

  5. Android 全局异常处理(二)

    CrashHandler  package org.wp.activity; import java.io.File; import java.io.FileOutputStream; import ...

  6. Hibernate与数据库的触发器协同工作

    Hibernate 与数据库中的触发器协同工作时, 会造成两类问题 1触发器使 Session 的缓存中的持久化对象与数据库中对应的数据不一致:触发器运行在数据库中, 它执行的操作对 Session ...

  7. 清除webkit浏览器css设置滚动条

    主要有下面7个属性 ::-webkit-scrollbar 滚动条整体部分,可以设置宽度啥的 ::-webkit-scrollbar-button 滚动条两端的按钮 ::-webkit-scrollb ...

  8. ERR_PTR,PTR_ERR还有IS_ERR函数详解

    内核中的函数常常返回指针,问题是如果出错,也希望能够通过返回的指针体现出来. 总体来说,如果内核返回一个指针,那么有三种情况:合法指针,NULL指针和非法指针. 1)合法指针:内核返回的指针一般是指向 ...

  9. 更新openssl

    在安装nodejs或者nginx什么的时候,有时候会报如下错误 npm: relocation error: npm: symbol SSL_set_cert_cb, version libssl.s ...

  10. ubuntu重新设置登陆界面|切换gdm kdm lightdm

    方法: $ sudo dpkg-reconfigure gdm 然后会出一个让你进行选择的提示,根据需要切换即可