• 转: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这里可以在终端看到打印信息

     

  • 相关阅读:
    10. Regular Expression Matching
    9. Palindrome Number (考虑负数的情况)
    8. String to Integer (整数的溢出)
    7. Reverse Integer (整数的溢出)
    LeetCode Minimum Size Subarray Sum
    LeetCode Course Schedule II
    Linux 文件缓存 (一)
    LeetCode Tries Prefix Tree
    Linux : lsof 命令
    LeetCode Binary Tree Right Side View
  • 原文地址:https://www.cnblogs.com/superPerfect/p/3857517.html
Copyright © 2020-2023  润新知