当前位置: 代码迷 >> 综合 >> ubuntu18.04 protobuf opencv qt5.9.0
  详细解决方案

ubuntu18.04 protobuf opencv qt5.9.0

热度:76   发布时间:2023-12-09 03:02:25.0

交叉编译工具链:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

百度rtc使用客户端 armlinux-softfp SDK版本

qt5.9.0的pc端安装就不多说,aarch64编译执行文件autoconfigure.sh 如下,需要使用chmod u+x 修改权限。qtbase里面的文件参考其他资料自行添加

./configure \
-prefix /opt/qt5.9.5-arm-webrtc \
-confirm-license \
-opensource \
-release \
-make libs \
-xplatform linux-aarch64-gnu-g++ \
-pch \
-qt-libjpeg \
-qt-libpng \
-qt-zlib \
-webrtc \
-no-opengl \
-no-qml-debug \
-no-sse2 \
-no-openssl \
-no-cups \
-no-glib \
-no-dbus \
-no-xcb \
-no-separate-debug-info \

protobuf编译

#安装依赖项目
sudo apt-get install autoconf automake libtool curl make g++ unzip
#下载最新源码
git clone https://github.com/google/protobuf.git
#进入目录
cd protobuf
#更新源
git submodule update --init --recursive
#生成依赖项目 此处执行后,安装目录需要root权限,不建议执行
./autogen.sh
#配置
./configure
#编译
make
#编译确认
make check
#安装
sudo make install
 # refresh shared library cache(刷新共享库配置)
sudo ldconfig
#查看版本
protoc --version

使用protoc --cpp_out=. XXXXX.proto得到需要的文件

交叉编译auto文件:

./configure --host=aarch64-linux-gnu CC=/usr/local/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc CXX=/usr/local/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ --disable-protoc --prefix=`pwd`/build/protobuf-c-arm
opencv编译

 mkdir build
 cd build
  cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
  make
  sudo make install

sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'

sudo ldconfig

交叉编译(开发板有移植,暂时未做,看网上资料用cmake-gui进行)

 

qtcreator的pro文件:

LIBS +=/usr/local/lib/libprotobuf.a -lpthread

INCLUDEPATH += /usr/local/include/google/protobuf/

INCLUDEPATH += /usr/local/include \
                /usr/local/include/opencv \
                /usr/local/include/opencv4 \
                /home/robot123/Downloads/BRTC/include/

LIBS += -L/lib/x86_64-linux-gnu -ldl -lpthread
LIBS += /usr/local/lib/libopencv*

  相关解决方案