我只是把一些容易错误点指出来,从头到尾移植,请看下面链接
Qt嵌入式解决方案(Qt5.14.2 + opengl 交叉编译移植至Jetson Nano 详细步骤)-CSDN博客
想不要那么麻烦直接搞好的朋友,直接看最后!
踩坑再回来,可能对你有所帮助!
最重要:开发机器只负责编译,而文件系统负责在开发机器上提供jetson nano上的一些库,安装库要在jetson nano上。
1.开发机器操作(ubuntu20.04):
一:sudo apt-get install gcc-aarch64-linux-gnu
执行这个指令后我发现没有aarch64-linux-gnu-g++,
你还需要安装 sudo apt-get install g++-aarch64-linux-gnu
注:在开发机器(ubuntu20.04)上安装
二:软连接opengl es库
进入 Jetson Nano 的 /usr/lib/aarch64-linux-gnu/tegra-egl 目录,执行:
sudo ln -s libGLESv2_nvidia.so.2 libGLESv2.so
sudo ln -s libEGL_nvidia.so.0 libEGL.so
这步非常重要,将第五步执行完之后到你的开发机器(我的是ubuntu20.04的虚拟机)看看相应的目录有没有这些软链接,如果没有在相应文件再执行一次
三: 每当你往jetson nano上安装完各种库一定要完成以下操作(在xx/Linux_for_Tegra/rtoofs/usr/文件夹),同步jetson nano上的库到开发机器
sudo rsync -e ssh -avz root@192.168.10.201:/usr/include .
sudo rsync -e ssh -avz root@192.168.10.201:/usr/lib .
不要忘了修复因为同步而损坏的链接文件,要在Linux_for_Tegra文件夹
sudo ./link.sh ./rootfs/
四:.准备编译配置
./configure \
-v \
-opensource \
-confirm-license \
-device-option CROSS_COMPILE=/usr/bin/aarch64-linux-gnu- \
-device linux-jetson-tx1-g++ \
-prefix /home/你的用户目录/Qt-for-arm5.14.2 \
-extprefix /home/你的用户目录/Qt-for-arm5.14.2 \
-hostprefix /home/你的用户目录/Qt-for-arm5.14.2/tools \
-nomake examples \
-nomake tests \
-nomake tools \
-opengl es2 \
-sysroot /home/你的用户目录/jetsonNano/Linux_for_Tegra/rootfs
一定要注意最后一行,它是你在开发机器上的文件系统的目录。
2. jetson nano操作:
一:无脑的安装库:
apt-get install libasound2-dev libbz2-dev libcap-dev libcups2-dev libdrm-dev libegl1-mesa-dev libgcrypt11-dev libnss3-dev libpci-dev libpulse-dev libudev-dev libxtst-dev gyp ninja-build libglu1-mesa-dev libfontconfig1-dev libx11-xcb-dev libicu-dev
sudo apt-get install libgles2-mesa
sudo apt-get install libgles2-mesa-dev
如果一次性安装出错就一个一个的安装(一定要在jetson nano安装)。
ERROR: The OpenGL functionality tests failed! You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2], QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform.
这个问题就是这样解决的
不要忘记同步到文件系统和修复软连接!!!
最后:这是我的成功截图
——————————————————————————————————————————
这是已经编译好的qt5.15.2的源码(我的机器是jetson nano4.6.4)
链接:https://pan.baidu.com/s/1bWK9dvopZ_M772x0wKoAVg?pwd=dgth
提取码:dgth
下载这个直接在jetson nano上编程,不需要交叉编译,直接一步到位!
下载解压之后,安装下面的qtcreator
sudo apt-get install qt5-default qtcreator -y
安装好之后在终端输入 qtcreator
如下图
然后点击工具->选项
你们打开之后的kit肯定没有5.15.2kit,所以不用担心和我的不一样
点击qt-version->添加:把你们之前解压的压缩包里面的bin/qmake添加
完成如下:
然后再点击 构建套件(kit)->添加,如下图:
改这个为你刚刚添加的
名字你自己取
欢迎各位朋友在评论区交流问题!