WSL中的ubuntu安装最新的Cmake及其使用(win11)

本文详细介绍了如何从官网下载并验证CMake包,解压、移动至/opt并创建软链接,以及在VSCode中设置CMake插件进行C++开发的过程。步骤包括版本验证、目录结构管理及VSCode中的CMake配置。

1.先从官网上下载最新的cmake安装包

cmake package

2. 对下载的软件进行sha256值的比较

➜  ~ sha256sum cmake-3.21.2-linux-x86_64.tar.gz
d5517d949eaa8f10a149ca250e811e1473ee3f6f10935f1f69596a1e184eafc1  cmake-3.21.2-linux-x86_64.tar.gz

3.对下载的*.tar.gz 进行解压缩

➜  ~ tar zxcf cmake-3.21.2-linux-x86_64.tar.gz

4. 查看解压后目录

sudo apt tree  #系统内没有安装tree软件包。
➜  ~ tree -L 2 cmake-3.21.2-linux-x86_64
cmake-3.21.2-linux-x86_64
├── bin
│   ├── ccmake
│   ├── cmake
│   ├── cmake-gui
│   ├── cpack
│   └── ctest
├── doc
│   └── cmake
├── man
│   ├── man1
│   └── man7
└── share
    ├── aclocal
    ├── applications
    ├── bash-completion
    ├── cmake-3.21
    ├── emacs
    ├── icons
    ├── mime
    └── vim

15 directories, 5 files

bin下面有各种cmake家族的产品程序。

5.创建软连接

/opt目录:用来安装附加软件包,是用户级的程序目录,可以理解为D:/Software。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。


/usr:系统级的目录,可以理解为C:/Windows/
/usr/lib:理解为C:/Windows/System32
/usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。
这里主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面。
注: 文件路径是可以指定的, 一般选择在/opt 或 /usr 路径下, 这里选择/opt

➜  ~ sudo mv cmake-3.21.2-linux-x86_64 /opt/cmake-3.21.2  #将cmake改名移动到/opt目录下。
➜  ~ ls /opt/cmake-3.21.2
bin  doc  man  share

创建软链接。

➜  ~ sudo ln -sf /opt/cmake-3.21.2/bin/* /usr/bin/

然后执行命令检查一下:

➜  ~ cmake --version
cmake version 3.21.2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

6. vscode操作wsl中的cmake进行运行c++

  • 安装cmake plugin

在这里插入图片描述

  • 然后快捷键Shift+Ctrl+P,换出命令调色板,选择“Cmake:Select a kit”,然后确定一个编译器环境。
    然后进行下图第一二步操作。
    在这里插入图片描述
  • 然后,进行Cmake 创建工程文件操作,文件名不能与当前操作目录重名,同样快捷键Shift+Ctrl+P,选择“Cmake:Configure”,需要自动创建一个“CMakeLists.txt”文件。
    在这里插入图片描述
    在这里插入图片描述
  • 最后,进行按住“Build”按钮,再点击“运行”。
    在这里插入图片描述
    运行结果截图:
    在这里插入图片描述

在这里插入图片描述
参考微软官网教程

### Win11上的WSL2中安装和配置ROS Noetic 要在 Windows 11WSL2 中成功安装并配置 ROS Noetic,以下是详细的说明: #### 系统准备 首先需要确认已正确安装 WSL2 和 Ubuntu 20.04 LTS。如果尚未完成此操作,请按照相关文档设置好 WSL2 并更新到最新状态[^3]。 ```bash sudo apt update && sudo apt upgrade -y ``` #### 设置源镜像加速 为了提高下载速度,建议替换默认的软件包源为国内镜像站点。编辑 `/etc/apt/sources.list` 文件并将内容替换成阿里云或其他可信镜像地址[^2]: ```bash sudo sed -i 's|http://archive.ubuntu.com/ubuntu/|https://mirrors.aliyun.com/ubuntu/|g' /etc/apt/sources.list sudo sed -i 's|http://security.ubuntu.com/ubuntu/|https://mirrors.aliyun.com/ubuntu/|g' /etc/apt/sources.list ``` 随后刷新缓存: ```bash sudo apt update ``` #### 安装依赖项 确保系统中有必要的工具链支持编译过程中的需求[^4]: ```bash sudo apt install build-essential cmake pkg-config python3-pip git wget curl unzip -y pip3 install catkin_pkg empy pyyaml setuptools rosdep rosinstall_generator wstool ``` #### 初始化 `rosdep` 这是管理依赖关系的重要组件之一,在正式构建之前需先对其进行初始化与更新处理: ```bash sudo rosdep init rosdep update ``` #### 下载并解压 ROS Noetic 基础文件 利用官方推荐的方式获取对应版本的核心元数据集合,并将其放置于指定目录下以便进一步扩展功能模块[^1]: ```bash mkdir -p ~/catkin_ws/src cd ~/catkin_ws/ wget https://raw.githubusercontent.com/ros-infrastructure/ros_release/master/noetic/release.yaml wstool init src release.yaml --shallow rm release.yaml ``` 接着同步所需的外部库资源列表至本地环境中去满足实际运行时可能存在的额外条件约束: ```bash rosdep install --from-paths src --ignore-src -r -y ``` #### 编译工作区 执行 Catkin 工具来整合所有子项目单元形成统一的整体框架结构体系: ```bash source /opt/ros/noetic/setup.bash catkin_make echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc source ~/.bashrc ``` #### 测试核心服务是否正常启动 最后验证当前部署成果能否顺利加载基础节点实例化流程逻辑控制回路闭环机制实现自动化调度任务分配等功能特性表现情况良好即可认为整个搭建环节顺利完成目标达成预期效果: ```bash roscore ``` 当终端显示类似以下日志消息时表示已经成功激活主控进程等待其他客户端连接请求到来共同协作完成复杂场景模拟实验等活动安排计划表单填写提交审核批准手续办理进度跟踪反馈意见收集整理分析报告撰写发布宣传推广营销策划方案设计实施监督管理考核评估总结经验教训吸取改进措施制定落实具体行动指南针方向指引灯塔照亮前行道路引领未来发展方向趋势预测预警风险防控应急处置预案编制演练培训教育提升综合素质能力水平增强团队凝聚力战斗力执行力创造力创新力竞争力可持续发展动力源泉不断涌现新的增长极点推动经济社会高质量快速发展迈进新征程谱写新华章创造新辉煌成就伟大梦想! ```plaintext ... logging to /home/<username>/.ros/log/<logfile>.log started roslaunch server http://<hostname>:<port>/ ros_comm version <version> SUMMARY ======== PARAMETERS * /rosdistro: noetic * /rosversion: <version> NODES auto-starting new master process[master]: started with pid [<pid>] ROS_MASTER_URI=http://localhost:<port>/ setting /run_id to <uuid> process[rosout-1]: started with pid [<pid>] started core service [/rosout] ``` --- ### 注意事项 1. 如果遇到网络连通性问题或者特定二进制包缺失的情况,可以尝试手动调整代理参数或更换更稳定的镜像服务器地址来源。 2. 对于图形界面的支持部分,则还需要单独配置 X Server (如 VcXsrv),并通过 DISPLAY 环境变量映射窗口渲染输出端口位置信息给远程主机识别解析使用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值