安装vmware虚拟机
- 准备安装包VMware-workstation-full-15.5.1-15018445.exe
下载地址 - 安装
参考资料
在vmware上安装Linux环境
- 准备安装包ubuntu-18.04.4-desktop-amd64.iso
下载地址 - 安装
参考资料
安装rv1109交叉编译工具链
- 准备安装包rv1109_toolchain_release.tar.bz2
下载地址 - 解压安装包rv1109_toolchain_release.tar.bz2
tar -zxvf rv1109_toolchain_release.tar.bz2
- 运行安装包脚本安装
sudo ./rv1109-cross.install
- 配置环境变量~/.bashrc
export RK_GCC_APP_PATH=/opt/rv1126_rv1109/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf export PATH=$PATH:$RK_GCC_APP_PATH/bin
- 安装结果检查
如下提示则表示安装正确:arm-rv1109-linux-gnueabihf-gcc --version
arm-rv1109-linux-gnueabihf-gcc (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36)) 8.3.0 Copyright (C) 2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
工具链使用时常见问题解决方案
- 若在编译某些工程时,出现cannot find -lnsl 提示的解决方法
cd /opt/rv1126_rv1109/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib ln -s libnsl-2.28.so libnsl.so
- 若在编译某些工程时,出现`GLIBC_2.14’ not found提示的解决方法
出现如上提示的原因,是因为libstdc++.so库不中不存在该符号,需要找到有此符号的库,并进行替换,具体做法如下:- 库下载地址,提取码为1481
- 替换方法
- 替换libm.so.6
cd /opt/rv1126_rv1109/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib cp /mnt/libm.so.6 ./
- 替换libstdc++.so.6.0.26
cd /opt/rv1126_rv1109/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/arm-linux-gnueabihf/lib cp /mnt/libstdc++.so.6.0.26 ./ # 强制更改之前的符号链接 sudo ln -sf libstdc++.so.6.0.26 libstdc++.so ```
- 替换libm.so.6
安装CMake
- 安装
sudo apt-get update sudo apt-get install cmake
- 安装成功检查
有类似如下输出则表示,安装cmake成功。rabin@ubuntu:~$ cmake --version cmake version 3.17.3 CMake suite maintained and supported by Kitware (kitware.com/cmake).
安装一些必要工具
# 代码管理版本库git
sudo apt install git git-lfs
# 代码格式化工具
sudo apt install clang-format
# 编译缓存ccache,编译加速用
sudo apt install ccache
# 网络文件系统,通过mount 实现开发板与电脑开发环境资源共享
sudo apt install nfs-kernel-server
# gitlab ci提交前检查使用
pip install pre-commit
# ninja编译加速用
pip install ninja
#
pip install cmake_format sphinx breathe sphinx_rtd_theme
NFS配置,实现资源共享
- 配置ubuntu nfs共享目录
# 在 /etc/exports 文件中添加可以共享的文件夹和允许的客户端地址, # 比如/home/share为共享项目路径 # 编辑exports vi /etc/exports # 添加如下内容 /home/share *(rw,sync,no_root_squash,no_subtree_check) # 保存退出后,重启nfs服务 systemctl restart nfs-server.service
- 设备端访问共享目录/home/share
# 然后在设备端,通过mount就可以读写/home/share目录了 # 通过ssh进入设备后台,然后mount # 以下命令表示将ubuntu上的共享目录/home/share,mount到设备端的/mnt目录,其中192.168.1.39为ubuntu的ip地址,若mount成功,则设备端/mnt目录下内容就为/home/share 目录下的内容 mount -t nfs -o nolock 192.168.1.39:/home/share /mnt
文章来源地址https://www.toymoban.com/news/detail-687421.html
文章来源:https://www.toymoban.com/news/detail-687421.html
到了这里,关于CMake rv1109交叉编译环境搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!