美文网首页LinuxVLC
vlc-3.0.8在飞凌开发板i.mx6q上移植

vlc-3.0.8在飞凌开发板i.mx6q上移植

作者: 小桥流水啦啦啦 | 来源:发表于2020-03-05 20:01 被阅读0次

    1、vlc-3.0.8交叉编译脚本

    #!/bin/sh
    
    echo "========================================================"
    make clean
    make distclean
    echo "========================================================"
    
    # export PKG_CONFIG_PATH="\
    # /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr/lib/pkgconfig:\
    # /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr/share/pkgconfig:\
    # $PLUG_LIB_DIR/ffmpeg/lib/pkgconfig "
    
    # export CFLAGS="-ggdb3 -O0 -O2 -pipe -g -feliminate-unused-debug-types \
    # -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/work/x86_64-nativesdk-pokysdk-linux/meta-environment-imx6qsabresd/1.0-r8=/usr/src/debug/meta-environment-imx6qsabresd/1.0-r8 \
    # -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-linux= \
    # -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-nativesdk-pokysdk-linux= \
    # -I/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr/include \
    # -I$PLUG_LIB_DIR/ffmpeg/include "
    
    export SDKTARGETSYSROOT=/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi
    export PATH=/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/sbin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/bin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/sbin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/../x86_64-pokysdk-linux/bin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-uclibc:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-musl:$PATH
    export CCACHE_PATH=/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/../x86_64-pokysdk-linux/bin:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-uclibc:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-musl:$CCACHE_PATH
    export PKG_CONFIG_SYSROOT_DIR=$SDKTARGETSYSROOT
    #export PKG_CONFIG_PATH=$SDKTARGETSYSROOT/usr/lib/pkgconfig
    export CONFIG_SITE=/opt/fsl-imx-x11/4.1.15-2.1.0/site-config-cortexa9hf-neon-poky-linux-gnueabi
    export OECORE_NATIVE_SYSROOT="/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux"
    export OECORE_TARGET_SYSROOT="$SDKTARGETSYSROOT"
    export OECORE_ACLOCAL_OPTS="-I /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/share/aclocal"
    
    export CC="arm-poky-linux-gnueabi-gcc  -march=armv7-a -mfpu=neon  -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=$SDKTARGETSYSROOT"
    export CXX="arm-poky-linux-gnueabi-g++  -march=armv7-a -mfpu=neon  -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=$SDKTARGETSYSROOT"
    export CPP="arm-poky-linux-gnueabi-gcc -E  -march=armv7-a -mfpu=neon  -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=$SDKTARGETSYSROOT"
    export AS="arm-poky-linux-gnueabi-as "
    export LD="arm-poky-linux-gnueabi-ld  --sysroot=$SDKTARGETSYSROOT"
    export GDB=arm-poky-linux-gnueabi-gdb
    export STRIP=arm-poky-linux-gnueabi-strip
    export RANLIB=arm-poky-linux-gnueabi-ranlib
    export OBJCOPY=arm-poky-linux-gnueabi-objcopy
    export OBJDUMP=arm-poky-linux-gnueabi-objdump
    export AR=arm-poky-linux-gnueabi-ar
    export NM=arm-poky-linux-gnueabi-nm
    export M4=m4
    export TARGET_PREFIX=arm-poky-linux-gnueabi-
    export CONFIGURE_FLAGS="--target=arm-poky-linux-gnueabi --host=arm-poky-linux-gnueabi --build=x86_64-linux --with-libtool-sysroot=$SDKTARGETSYSROOT"
    #export CFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/work/x86_64-nativesdk-pokysdk-linux/meta-environment-imx6qsabresd/1.0-r8=/usr/src/debug/meta-environment-imx6qsabresd/1.0-r8 -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-nativesdk-pokysdk-linux= "
    #export CXXFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/work/x86_64-nativesdk-pokysdk-linux/meta-environment-imx6qsabresd/1.0-r8=/usr/src/debug/meta-environment-imx6qsabresd/1.0-r8 -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-nativesdk-pokysdk-linux= "
    #export LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed"
    export CPPFLAGS=""
    export KCFLAGS="--sysroot=$SDKTARGETSYSROOT"
    export OECORE_DISTRO_VERSION="4.1.15-2.1.0"
    export OECORE_SDK_VERSION="4.1.15-2.1.0"
    export ARCH=arm
    export CROSS_COMPILE=arm-poky-linux-gnueabi-
    
    PLUG_LIB_DIR="/home/imhqq/share/huqiqiao/vlc-3.0.8-plugin/lib"
    VLC_SRC_DIR="/home/imhqq/share/huqiqiao/vlc-3.0.8"
    
    export PKG_CONFIG_PATH="$SDKTARGETSYSROOT/usr/lib/pkgconfig:\
    ${SDKTARGETSYSROOT}/usr/lib/pkgconfig:\
    ${SDKTARGETSYSROOT}/usr/share/pkgconfig:\
    ${PLUG_LIB_DIR}/a52/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/alsa/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/dbus/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/faad/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/ffmpeg/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/flac/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/freetype/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libmad/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libmpeg2/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libogg/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libsndfile/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libgcrypt/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libgpg-error/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/libvorbis/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/live/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/lua5.3/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/SDL1/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/SDL2/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/SDL2_image/lib/pkgconfig:\
    ${PLUG_LIB_DIR}/x264/lib/pkgconfig"
    
    
    
    export CFLAGS=" -ggdb3 -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/work/x86_64-nativesdk-pokysdk-linux/meta-environment-imx6qsabresd/1.0-r8=/usr/src/debug/meta-environment-imx6qsabresd/1.0-r8 -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-nativesdk-pokysdk-linux= \
    -I${SDKTARGETSYSROOT}/usr/include \
    -I${PLUG_LIB_DIR}/a52/include \
    -I${PLUG_LIB_DIR}/alsa/include \
    -L${PLUG_LIB_DIR}/dbus/include \
    -I${PLUG_LIB_DIR}/faad/include \
    -I${PLUG_LIB_DIR}/ffmpeg/include \
    -I${PLUG_LIB_DIR}/ffmpeg/include/libavcodec \
    -I${PLUG_LIB_DIR}/flac/include \
    -I${PLUG_LIB_DIR}/freetype/include \
    -I${PLUG_LIB_DIR}/libmad/include \
    -I${PLUG_LIB_DIR}/libmpeg2/include/mpeg2dec \
    -I${PLUG_LIB_DIR}/libogg/include \
    -I${PLUG_LIB_DIR}/libsndfile/include \
    -I${PLUG_LIB_DIR}/libgcrypt/include \
    -I${PLUG_LIB_DIR}/libgpg-error/include \
    -I${PLUG_LIB_DIR}/libvorbis/include \
    -I${PLUG_LIB_DIR}/live/include \
    -I${PLUG_LIB_DIR}/lua5.3/include \
    -I${PLUG_LIB_DIR}/SDL1/include \
    -I${PLUG_LIB_DIR}/SDL2/include \
    -I${PLUG_LIB_DIR}/SDL2_image/include \
    -I${PLUG_LIB_DIR}/x264/include \
    -I/home/imhqq/share/huqiqiao/vlc-2.2.1-plugin/PicoGL/include "
    
    export CXXFLAGS=" -ggdb3 -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/work/x86_64-nativesdk-pokysdk-linux/meta-environment-imx6qsabresd/1.0-r8=/usr/src/debug/meta-environment-imx6qsabresd/1.0-r8 -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/data/fsl-release-bsp/build-x11/tmp/sysroots/x86_64-nativesdk-pokysdk-linux= \
    -I${SDKTARGETSYSROOT}/usr/include \
    -I${PLUG_LIB_DIR}/a52/include \
    -I${PLUG_LIB_DIR}/alsa/include \
    -L${PLUG_LIB_DIR}/dbus/include \
    -I${PLUG_LIB_DIR}/faad/include \
    -I${PLUG_LIB_DIR}/ffmpeg/include \
    -I${PLUG_LIB_DIR}/ffmpeg/include/libavcodec \
    -I${PLUG_LIB_DIR}/flac/include \
    -I${PLUG_LIB_DIR}/freetype/include \
    -I${PLUG_LIB_DIR}/libmad/include \
    -I${PLUG_LIB_DIR}/libmpeg2/include/mpeg2dec \
    -I${PLUG_LIB_DIR}/libogg/include \
    -I${PLUG_LIB_DIR}/libsndfile/include \
    -I${PLUG_LIB_DIR}/libvorbis/include \
    -I${PLUG_LIB_DIR}/libgcrypt/include \
    -I${PLUG_LIB_DIR}/libgpg-error/include \
    -I${PLUG_LIB_DIR}/live/include \
    -I${PLUG_LIB_DIR}/lua5.3/include \
    -I${PLUG_LIB_DIR}/SDL1/include \
    -I${PLUG_LIB_DIR}/SDL2/include \
    -I${PLUG_LIB_DIR}/SDL2_image/include \
    -I${PLUG_LIB_DIR}/x264/include \
    -I/home/imhqq/share/huqiqiao/vlc-2.2.1-plugin/PicoGL/include "
    
    export LDFLAGS=" -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed \
    -L${SDKTARGETSYSROOT}/usr/lib \
    -L${PLUG_LIB_DIR}/a52/lib \
    -L${PLUG_LIB_DIR}/alsa/lib \
    -L${PLUG_LIB_DIR}/dbus/lib \
    -L${PLUG_LIB_DIR}/faad/lib \
    -L${PLUG_LIB_DIR}/ffmpeg/lib \
    -L${PLUG_LIB_DIR}/flac/lib \
    -L${PLUG_LIB_DIR}/freetype/lib \
    -L${PLUG_LIB_DIR}/libmad/lib \
    -L${PLUG_LIB_DIR}/libmpeg2/lib \
    -L${PLUG_LIB_DIR}/libogg/lib \
    -L${PLUG_LIB_DIR}/libsndfile/lib \
    -L${PLUG_LIB_DIR}/libgpg-error/lib \
    -L${PLUG_LIB_DIR}/libgcrypt/lib \
    -L${PLUG_LIB_DIR}/libvorbis/lib \
    -L${PLUG_LIB_DIR}/live/lib \
    -L${PLUG_LIB_DIR}/lua5.3/lib \
    -L${PLUG_LIB_DIR}/SDL1/lib \
    -L${PLUG_LIB_DIR}/SDL2/lib \
    -L${PLUG_LIB_DIR}/SDL2_image/lib \
    -L${PLUG_LIB_DIR}/x264/lib "
    
    export dependency_libs="$dependency_libs \
    -L${PLUG_LIB_DIR}/a52/lib \
    -L${PLUG_LIB_DIR}/alsa/lib \
    -L${PLUG_LIB_DIR}/dbus/lib \
    -L${PLUG_LIB_DIR}/faad/lib \
    -L${PLUG_LIB_DIR}/ffmpeg/lib -lavcodec -lavfilter -lavformat -lavutil -lswscale \
    -L${PLUG_LIB_DIR}/flac/lib \
    -L${PLUG_LIB_DIR}/freetype/lib \
    -L${PLUG_LIB_DIR}/libmad/lib \
    -L${PLUG_LIB_DIR}/libmpeg2/lib \
    -L${PLUG_LIB_DIR}/libogg/lib \
    -L${PLUG_LIB_DIR}/libsndfile/lib \
    -L${PLUG_LIB_DIR}/libgcrypt/lib \
    -L${PLUG_LIB_DIR}/libgpg-error/lib \
    -L${PLUG_LIB_DIR}/libvorbis/lib \
    -L${PLUG_LIB_DIR}/live/lib \
    -L${PLUG_LIB_DIR}/lua5.3/lib \
    -L${PLUG_LIB_DIR}/SDL1/lib \
    -L${PLUG_LIB_DIR}/SDL2/lib \
    -L${PLUG_LIB_DIR}/SDL2_image/lib \
    -L${PLUG_LIB_DIR}/x264/lib \
    -L/home/imhqq/share/huqiqiao/vlc-2.2.1-plugin/PicoGL/lib \
    /home/imhqq/share/huqiqiao/vlc-3.0.8/arm_vlc_build/lib/libvlccore.la -lrt -ldl "
    
    # ------------------------------------------------------------------------------------------------------------
    # dependency_libs填写的方式:
    # ------------------------------------------------------------------------------------------------------------
    # 1、-L/home/imhqq/share/huqiqiao/vlc-2.2.1-plugin/lib/live/lib -lBasicUsageEnvironment -lgroupsock -lliveMedia -lUsageEnvironment
    # 2、/home/imhqq/share/huqiqiao/vlc-2.2.1-plugin/lib/liba52/lib/liba52.la'
    # ------------------------------------------------------------------------------------------------------------
    
    #  contrib patch
    
    cd contrib
    ./bootstrap
    cd src
    make -n > contrib-debug.txt 2>&1
    
    cd ${VLC_SRC_DIR}
    ./configure -C \
    --build=x86_64-linux-gnu \
    --target=arm-poky-linux-gnueabi \
    --host=arm-poky-linux-gnueabi \
    --prefix=/home/imhqq/share/huqiqiao/vlc-3.0.8/arm_vlc_build \
    --enable-run-as-root \
    --enable-vlc  \
    --enable-sout \
    --enable-vlm \
    --enable-realrtsp \
    --enable-sout \
    --enable-libass \
    --disable-optimizations  \
    --enable-ncurses \
    --enable-ogg \
    --enable-oggspots \
    --enable-debug \
    --enable-merge-ffmpeg \
    --enable-mpc \
    --enable-qt \
    --enable-xvideo  \
    --enable-xcb \
    --enable-libxml2 \
    --enable-lua \
    --enable-avcodec \
    --enable-gles2 \
    --enable-freetype \
    --enable-a52 \
    --enable-jpeg \
    --enable-swscale \
    --enable-mad \
    --enable-pulse  \
    --enable-postproc \
    --enable-faad \
    --enable-sdl-image \
    --enable-libgcrypt \
    --enable-live555 \
    --disable-mod  \
    --disable-screen  \
    --disable-macosx \
    --disable-macosx-qtkit  \
    --disable-altivec \
    --disable-coverage \
    --disable-taglib \
    --disable-dvdread \
    --disable-dvdnav \
    --disable-dvbpsi \
    --disable-v4l2 \
    --disable-vcd \
    --disable-dca \
    --disable-tremor \
    --disable-gme \
    --disable-speex \
    --disable-theora \
    --disable-schroedinger \
    --disable-png \
    --disable-telx \
    --disable-kate \
    --disable-fribidi \
    --disable-fontconfig  \
    --disable-gnutls  \
    --disable-lirc  \
    --disable-silent-rules \
    --disable-neon \
    --disable-dc1394 \
    --disable-vlm \
    --disable-twolame \
    --disable-sftp \
    --disable-notify \
    --disable-shout \
    --disable-aa \
    --disable-caca \
    --disable-jack \
    --disable-libva \
    --disable-dxva2 \
    --disable-shine \
    --disable-zvbi \
    --disable-tiger \
    --disable-maintainer-mode \
    --disable-dependency-tracking \
    --disable-gprof \
    --disable-cprof \
    --disable-libcddb \
    --disable-wma-fixed  \
    --disable-omxil \
    --disable-fluidsynth \
    --disable-svg \
    --disable-upnp \
    --disable-goom \
    --disable-projectm \
    --disable-mtp \
    --disable-update-check \
    --disable-linsys \
    --disable-bluray \
    --disable-smbclient \
    --disable-decklink \
    --disable-vnc \
    --disable-freerdp \
    --disable-macosx-avfoundation \
    --disable-asdcp \
    --disable-udev \
    --disable-gst-decode \
    --disable-vdpau \
    --disable-avahi
    
    
    make -j16
    make install
    

    2、编译出来的vlc版本

    root@imhqq-B360M-D3V:/home/imhqq/share/huqiqiao/vlc-3.0.8/arm_vlc_build# tree -L 2
    .
    ├── bin
    │   ├── cvlc
    │   ├── nvlc
    │   ├── qvlc
    │   ├── rvlc
    │   ├── vlc
    │   └── vlc-wrapper
    ├── include
    │   └── vlc
    ├── lib
    │   ├── libvlccore.la
    │   ├── libvlccore.so -> libvlccore.so.9.0.0
    │   ├── libvlccore.so.9 -> libvlccore.so.9.0.0
    │   ├── libvlccore.so.9.0.0
    │   ├── libvlc.la
    │   ├── libvlc.so -> libvlc.so.5.6.0
    │   ├── libvlc.so.5 -> libvlc.so.5.6.0
    │   ├── libvlc.so.5.6.0
    │   ├── pkgconfig
    │   └── vlc
    └── share
        ├── applications
        ├── doc
        ├── icons
        ├── kde4
        ├── locale
        ├── man
        ├── metainfo
        └── vlc
    
    15 directories, 14 files
    

    (完)

    相关文章

      网友评论

        本文标题:vlc-3.0.8在飞凌开发板i.mx6q上移植

        本文链接:https://www.haomeiwen.com/subject/swxhrhtx.html