Ubuntu12.04编译vlc2.1.0

1.编译环境

VM8.0.1

# gcc -v

Using built-in specs.

COLLECT_GCC=gcc

COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/4.6/lto-wrapper

Target: i686-linux-gnu

Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu

Thread model: posix

gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

2 安装vlc依赖的库

#sudo apt-get build-dep vlc

3、安装必须的工具包否则后面会出错
#apt-get install autoconf automake libtool git subversion

4、安装最新的VLC
#cd /home/git_work
#git clone git://git.videolan.org/vlc.git

5、到vlc根目录
#./bootstrap

generating modules/**/Makefile.am

..................................

+ autoreconf --install --force --verbose -I m4

autoreconf: Entering directory `.'

autoreconf: running: autopoint --force

Copying file po/Makevars.template

autoreconf: running: aclocal -I m4 --force -I m4

autoreconf: configure.ac: tracing

autoreconf: running: libtoolize --install --copy --force

libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `autotools'.

libtoolize: copying file `autotools/config.guess'

libtoolize: copying file `autotools/config.sub'

libtoolize: copying file `autotools/install-sh'

libtoolize: copying file `autotools/ltmain.sh'

libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.

libtoolize: copying file `m4/libtool.m4'

libtoolize: copying file `m4/ltoptions.m4'

libtoolize: copying file `m4/ltsugar.m4'

libtoolize: copying file `m4/ltversion.m4'

libtoolize: copying file `m4/lt~obsolete.m4'

autoreconf: running: /usr/bin/autoconf --include=m4 --force

autoreconf: running: /usr/bin/autoheader --include=m4 --force

autoreconf: running: automake --add-missing --copy --force-missing

autoreconf: Leaving directory `.'

+ rm -f po/Makevars.template

+ rm -f stamp-h1

+ set +x

Successfully bootstrapped

6、配置环境

#./configure.sh -help 查看配置帮助

#./configure --prefix=/mnt/share/vlc(指定make install 要安装的目录)

然后等待有没有错误了:

libvlc configuration

--------------------

version               : 2.1.0-git

system                : linux

architecture            : i686 mmx sse sse2

optimizations           : yes

vlc aliases              : cvlc rvlc qvlc svlc nvlc

To build vlc and its plugins, type `make', or `./compile' if you like nice colors.

生成makefile

9、可直接编译

#make

Making all in test

make[2]: Entering directory `/home/git-work/vlc2.1.0/test'

make[2]: Nothing to be done for `all'.

make[2]: Leaving directory `/home/git-work/vlc2.1.0/test'

make[2]: Entering directory `/home/git-work/vlc2.1.0'

GEN    cvlc

GEN    rvlc

GEN    qvlc

GEN    svlc

GEN    nvlc

make[2]: Leaving directory `/home/git-work/vlc2.1.0'

make[1]: Leaving directory `/home/git-work/vlc2.1.0'

10、检查一下劳动成果:

#ls ./lib/.libs/ -al

在lib目录下的.libs下,隐藏着编译好的库文件:

total 1316

drwxr-xr-x 2 root root   4096 Jan 23 06:33 .

drwxr-xr-x 4 root root   4096 Jan 23 17:26 ..

-rw-r--r-- 1 root root  33080 Jan 23 06:24 audio.o

-rw-r--r-- 1 root root  19020 Jan 23 06:24 core.o

-rw-r--r-- 1 root root   8572 Jan 23 06:24 error.o

-rw-r--r-- 1 root root  19940 Jan 23 06:24 event_async.o

-rw-r--r-- 1 root root  33288 Jan 23 06:24 event.o

lrwxrwxrwx 1 root root     12 Jan 23 06:24 libvlc.la -> ../libvlc.la

-rw-r--r-- 1 root root    986 Jan 23 06:24 libvlc.lai

lrwxrwxrwx 1 root root     15 Jan 23 06:24 libvlc.so -> libvlc.so.5.3.0

lrwxrwxrwx 1 root root     15 Jan 23 06:24 libvlc.so.5 -> libvlc.so.5.3.0

-rwxr-xr-x 1 root root 376774 Jan 23 06:24 libvlc.so.5.3.0

-rwxr-xr-x 1 root root 376774 Jan 23 06:33 libvlc.so.5.3.0T

-rw-r--r-- 1 root root   7135 Jan 23 06:33 libvlc.ver

-rw-r--r-- 1 root root  15760 Jan 23 06:24 log.o

-rw-r--r-- 1 root root  43136 Jan 23 06:24 media_discoverer.o

-rw-r--r-- 1 root root  10080 Jan 23 06:24 media_library.o

-rw-r--r-- 1 root root  34012 Jan 23 06:24 media_list.o

-rw-r--r-- 1 root root  50928 Jan 23 06:24 media_list_player.o

-rw-r--r-- 1 root root  43788 Jan 23 06:24 media.o

-rw-r--r-- 1 root root  86344 Jan 23 06:24 media_player.o

-rw-r--r-- 1 root root  16084 Jan 23 06:24 playlist.o

-rw-r--r-- 1 root root   1488 Jan 23 06:24 revision.o

-rw-r--r-- 1 root root  69992 Jan 23 06:24 video.o

-rw-r--r-- 1 root root  52796 Jan 23 06:24 vlm.o

11、安装

安装到/mnt/share/vlc目录下

运行 vlc

VLC is not supposed to be run as root. Sorry.

If you need to use real-time priorities and/or privileged TCP ports

you can use vlc-wrapper (make sure it is Set-UID root and

cannot be run by non-trusted users first).

只能重新编译安装,configure的时候加 --enable-run-as-root

12、调试

运行  ./vlc -vv这里可以在终端看到打印信息

转:Ubuntu12.04编译VLC,在linux上运行的更多相关文章

  1. Ubuntu12.04编译Android2.3.4

    Ubuntu12.04编译Android2.3.4 1.下载Ubuntuubuntu-12.04-dvd-i386.iso2.使用U盘安装,启动盘制作用unetbootin-windows-568工具 ...

  2. Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台

    转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...

  3. 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...

  4. 不装mono,你的.NET程序照样可以在Linux上运行!

    让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...

  5. Wine——在Linux上运行Windows软件

    官网:https://www.winehq.org/ 参考: wikipedia 教你使用Wine在Linux上运行Windows软件 如何安装和使用Wine,以便在Linux上运行Windows应用 ...

  6. 编译可在Android上运行的qemu user mode

    前言 本文在Ubuntu 64位系统上对qemu项目进行交叉编译,并且只编译与qemu user mode有关的代码. 下文中的”NDK”若无特殊说明均指”Android NDK”. 下文中”$NDK ...

  7. 系列篇|编译可在Android上运行的依赖库(一):glib库

    前言 这是系列文章,它们由<编译可在Android上运行的glib库>及其他4篇文章组成,这4篇文章在“编译依赖库”一节中列出.由于glib库依赖于其他第三方库,所以需要先将依赖的第三方库 ...

  8. 在Linux上运行C#

    众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...

  9. 发布项目到 Linux 上运行 Core 项目

    发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...

随机推荐

  1. [LeetCode][Java] Unique Paths II

    题目: Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. H ...

  2. TCP三次握手与DDOS攻击原理

    TCP三次握手与DDOS攻击原理 作者:冰盾防火墙 网站:www.bingdun.com 日期:2014-12-09   在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接. ...

  3. 深度探究apk安装过程

    一.先验知识 0.PcakageaManagerService版本号变化 1.概述 2.PackageManagerService服务启动流程 3. PackageManagerService入口 二 ...

  4. nginx list directory

    使用 http autoindex 模块列出 目录, 例如 需要将 /var/www 下的 resourcepacks 目录以 http 的方式 暴露         这样设置 nginx       ...

  5. python(35)- 异常处理

    一 错误和异常 part1:程序中难免出现错误,而错误分成两种 1.语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)   #语法错误示范一 if #语法错误示范二 ...

  6. C#动态编译dll或exe

    string strCode = @" using System; using System.Text; using System.Collections.Generic; using Sy ...

  7. STL之set具体解释(二)

    首先来看看set集合容器: set集合容器实现了红黑树的平衡二叉树数据结构.在插入元素时它会自己主动调整二叉树的排列,把该元素放到适当的位置,而且 保证左右子树平衡.平衡二叉检索树採用中序遍历算法. ...

  8. Android创建和使用数据库

    一.关系型数据库SQLIte         每一个应用程序都要使用数据.Android应用程序也不例外,Android使用开源的.与操作系统无关的SQL数据库-SQLite. SQLite第一个Al ...

  9. Java的泛型约束和限制

    不能用基本类型实例化类型参数 不能用类型参数代替基本类型:例如,没有Pair<double>,只有Pair<Double>,其原因是类型擦除.擦除之后,Pair类含有Objec ...

  10. .Net 中的反射(动态创建类型实例)

    动态创建对象 在前面节中,我们先了解了反射,然后利用反射查看了类型信息,并学习了如何创建自定义特性,并利用反射来遍历它.可以说,前面三节,我们学习的都是反射是什么,在接下来的章节中,我们将学习反射可以 ...