• 交叉编译


    //////////////////////////////////////////////
    // cross compile for qt(aarch64-linux)
    . download qt source code
    https://download.qt.io/archive/qt/
    qt-everywhere-opensource-src-5.9.5.tar.xz is source code
    qt-opensource-linux-x64-5.9.5.run is for linux
    . use command line "apt-get install qt..." install qt at /usr/bin/ /usr/lib/
    . build cross compile env
    1) Compilers: add /usr/bin/aarch64-linux-gnu-gcc /usr/bin/aarch64-linux-gnu-g++
    "which aarch64-linux-gnu-gcc" command give the directory
    2) Qt Versions: add Qt5.9.5(qte-5.9.5) at /opt/qte-5.9.5/bin/qmake
    3) Kits: Name:aarch64, Device type:Generic Linux Device, Compiler C: ARM_GCC C++: ARM_G++
    Debuger: none, qt version: Qt5.9.5(qte-5.9.5)
    .build qt source file
    1)configure qmake at source code qt-5.9.5/qtbase/mkspecs/linux-aarch64-gnu-g++/qmake.conf
    add QT_QPA_DEFAULT_PLATFORM = linuxfb, others keep the same
    2)configure step
    ./configure -prefix /opt/qte-5.9.5 \
    -opensource \
    -confirm-license \
    -release \
    -shared \
    -accessibility \
    -c++std c++11 \
    -xplatform linux-aarch64-gnu-g++ \
    -qpa linuxfb \
    -linuxfb \
    -qreal float \
    -pch \
    -qt-libjpeg \
    -qt-zlib \
    -qt-libpng \
    -no-sse2 \
    -no-largefile \
    -no-qml-debug \
    -no-glib \
    -no-gtkstyle \
    -no-opengl \
    -nomake tools \
    -nomake examples \
    -skip qt3d -skip qtcanvas3d -skip qtdoc -skip qtwayland
    3)make&make install

    //////////////////////////////////////////////
    // cross compile for opencv(aarch64-linux)
    .use cmake to configure
    1)Specify options for cross-compiling
    Operating System=arm-linux
    C=/usr/bin/aarch64-linux-gnu-gcc C++=/usr/bin/aarch64-linux-gnu-g++
    Target Root=/opt/qte-5.9.5
    notice that program mode should be: search in target root, then native system
    2) CMAKE_INSTALL_PREFIX=/home/opencve-2.4.10 CMAKE_FINE_ROOT_PATH=/opt/qte-5.9.5
    .go to build_aarch64 file path, use command line to build
    make&sudo make install
    be careful: 3rdparty like libpng, libjpeg should use -fpic to link, modifies flag.make file

    //////////////////////////////////////////////

    compile x264(x64-linux)
    ./configure --enable-shared
    make&sudo make install

    //////////////////////////////////////////////

    compile ffmpeg(x64-linux)

    .sdl2 is necessary for ffplay, http://libsdl.org/release/
    .x264 is the a good .h264 impelmentation
    ./configure --enable-shared --enable-swscale --enable-gpl --enable-nonfree
    --enable-pic --prefix=/home/ffmpeg --enable-version3 --enable-postproc
    --enable-pthreads --enable-x254
    make&sudo make install

  • 相关阅读:
    java java.lang.NoClassDefFoundError 的解决办法
    jdbc.properties 包含多种数据库驱动链接的版本
    regex正则表达式
    针对谷歌默认最小字体12px的正确解决方案 (css、html)
    有关svn的报错
    芝麻圆表
    微信 公众号开发文档接口都是后台去请求。
    一级和二级的列表在一起的时候。获取一级放在轮播里面展示。10个一组轮播
    移动端的搜索用的是from提交
    h5中不能用js来直接获取网络码和机器码的。
  • 原文地址:https://www.cnblogs.com/luofeiju/p/15712219.html
Copyright © 2020-2023  润新知