转:Ubuntu12.04编译VLC,在linux上运行
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上运行的更多相关文章
- Ubuntu12.04编译Android2.3.4
Ubuntu12.04编译Android2.3.4 1.下载Ubuntuubuntu-12.04-dvd-i386.iso2.使用U盘安装,启动盘制作用unetbootin-windows-568工具 ...
- Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...
- 不装mono,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...
- Wine——在Linux上运行Windows软件
官网:https://www.winehq.org/ 参考: wikipedia 教你使用Wine在Linux上运行Windows软件 如何安装和使用Wine,以便在Linux上运行Windows应用 ...
- 编译可在Android上运行的qemu user mode
前言 本文在Ubuntu 64位系统上对qemu项目进行交叉编译,并且只编译与qemu user mode有关的代码. 下文中的”NDK”若无特殊说明均指”Android NDK”. 下文中”$NDK ...
- 系列篇|编译可在Android上运行的依赖库(一):glib库
前言 这是系列文章,它们由<编译可在Android上运行的glib库>及其他4篇文章组成,这4篇文章在“编译依赖库”一节中列出.由于glib库依赖于其他第三方库,所以需要先将依赖的第三方库 ...
- 在Linux上运行C#
众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...
- 发布项目到 Linux 上运行 Core 项目
发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...
随机推荐
- LINUX下GDB反汇编和调试
Linux下的汇编与Windows汇编最大的不同就是第一个操作数是原操作数,第二个是目的操作数.而Windows下却是相反. 1. 基本操作指令 简单的操作数类型说明.一般有三种. (1)马上数操作数 ...
- 兔子--html,js,php,ASP,ASP.NET,JSP的关系
html是超文本链接语言.是静态的.显示在client.仅仅用HTML做出来的网页是静态网页.没不论什么交互功能. JS是一种基于对象和事件驱动的脚本语言,执行在client.是一种比較简单的编程语言 ...
- 批量杀死mysql进程
http://www.chengyongxu.com/blog/%E6%89%B9%E9%87%8F%E6%9D%80%E6%AD%BBmysql%E8%BF%9B%E7%A8%8B/
- Android通过JNI实现与C语言的串口通讯操作蓝牙硬件模块
一直想写一份技术文档,但因为自感能力有限而无从下笔,近期做了个关于Android平台下实现与C语言的通讯来操作蓝牙模块的项目,中间碰到了很多问题,也在网上查了很多资料,在完毕主要功能后.也有一些人在网 ...
- 再过半小时,你就能明白kafka的工作原理了
本文在个人技术博客不同步发布,详情可猛戳 亦可扫描屏幕右侧二维码关注个人公众号,公众号内有个人联系方式,等你来撩... 为什么需要消息队列 周末无聊刷着手机,某宝网APP突然蹦出来一条消息" ...
- IntelliJ IDEA配置Tomcat及部署项目
IntelliJ IDEA配置Tomcat及部署项目(原链接) 主要有以下几个要点 1.选择本地的tomcat容器. 2.可以选择修改访问路径. 3.On Update action 当我们按 Ctr ...
- Asp.Net Core 初探 (三)
昨天失败的生产环境部署就先放着,明天再解决! 今天利用中午的空余时间看了一下Asp.net core 的Areas . 相对于Asp.net MVC5 以及之前的版本,asp.net core 的Ar ...
- ReboletricSample工程搭建
受到 Just Say No to More End-to-End Tests 文章链接:http://googletesting.blogspot.tw/2015/04/just-say-no-t ...
- Python之Numpy库常用函数大全(含注释)
前言:最近学习Python,才发现原来python里的各种库才是大头! 于是乎找了学习资料对Numpy库常用的函数进行总结,并带了注释.在这里分享给大家,对于库的学习,还是用到时候再查,没必要死记硬背 ...
- EasyRTMP实现的一套简单、高效、易用的全平台(Windows/Linux/ARM/Android/iOS)RTMP直播推送库
本文转自EasyDarwin开源团队成员Kim的博客:http://blog.csdn.net/jinlong0603/article/details/52938980 EasyRTMP介绍 Easy ...