服务器目前是 CentOS 7.8 新购服务器准备焕新辣,佬们推荐使用什么 Linux服务器系统 喵? Rocky Linux AlmaLinux Ubuntu Server LTS Debian Stable Fedora Server CoreOS Alibaba Cloud Linux Oracle Linux Other 点击以查看投票。 目前在 Rocky 和 Ubuntu 之间徘徊喵 感觉 Rocky 更会符合 CentOS 的直觉, Ubuntu 则更省事,欢迎佬补充喵 1 个帖子 - 1 位参与者 阅读完整话题
事情是这样子的,前几个月把电脑换成ubuntu系统,就彻底放弃了win了。其实一直用都没什么问题,而且linux更合适ai。 直到前两天,要搞点玩意需要用fusion360,才发现这家伙居然没有linux版本。 虽然有其他的解决方法,比如在linux中装一个虚拟鸡来安装虚拟的win系统(属实倒反天罡了),又或者是用wine来装,但又存在很多莫名其妙的问题(闪退、崩溃、卡死之类的) 最后装了freecad,但是界面属实有点难看,而且好陌生的感觉 想着,那也好过去网吧,就凑合着用。 就在摸索过程中,发现它可以连mcp 于是,大胆的尝试:让cc直接连接并且画一个简单的玩意。 最后它用了15分钟完成,并且做好了装配,并且调整好啮齿错位等等。 (但是它没有草图,感觉有点像让它写软件,没有给代码,只给了打包好的二进制文件 ) emmm,我用的是这个mcp,是别人开源的,我就不发连接了。 1 个帖子 - 1 位参与者 阅读完整话题
平时习惯了Ubuntu的shell指令,对于window脚本完全不熟。很简单一个任务,写一个bat脚本,用来在Window中批量更新一下下面的AI工具: npm install -g @anthropic-ai/claude-code npm install -g @fission-ai/openspec npm install -g @google/gemini-cli npm install -g @kilocode/cli ...... 用 kimi2.6 写的脚本: @echo off chcp 65001 >nul ...... npm install -g @anthropic-ai/claude-code npm install -g @fission-ai/openspec npm install -g @google/gemini-cli ...... echo 按任意键关闭窗口... pause >nul 贴心的叫我用“右键以管理员身份运行即可一键安装”,一安装直接删退,再给个机会写一遍还是没多大差别。 直接用gpt网页版写: @echo off chcp 65001 >nul ...... call npm install -g @anthropic-ai/claude-code call npm install -g @fission-ai/openspec call npm install -g @google/gemini-cli call npm install -g @kilocode/cli ...... 直接复制粘贴一键执行,全过。 核心就差一个call,这智障国产模型,给了两次机会,消耗几十k token,连个小小脚本都写不好,还好意思吹牛说自己能力比肩opus,脚踩gpt。不是不想用国产,而是国产厂商能力都用在了吹牛上了。 1 个帖子 - 1 位参与者 阅读完整话题
ubuntu的自带系统各种麻烦,想自己重新dd安装下,请问有一键dd的脚本么? 刚才在github上找了下,没看到合适的, 3 个帖子 - 3 位参与者 阅读完整话题
Ubuntu搭建PX4无人机仿真环境 前言 本教程基于 ROS2 ,在搭建之前,需要把 ROS2、QGC 等基础环境安装配置完成。 小白必看 : 本次安装是以 px4 v1.14.0 为例,不适用之前的 px4 版本。(支持 Ubuntu 22.04 ROS2 Humble PX4v1.14.0+,Ubuntu 24.04 ROS2 Jazzy PX4v1.16.0+) 我的配置如下: 虚拟机 Ubuntu 22.04 (运行内存 4G、硬盘内存 80G) 、ROS2 Humble 、QGC v4.4.4 禁止无脑复制:首先大部分命令都有先后顺序,就是要上一个命令执行成下一个才能执行成功,对于不熟悉的命令可以直接复制问 AI 这样还能顺带学习学习;其次在有些情况下多个命令一起执行会出现奇怪的错误,而且有些命令旁边有注释,有时候复制上去可能也会出现错误。 建议使用虚拟机:虽然虚拟机得性能有限,但是对于新手入门阶段是完全够用了,后续大型仿真再用双系统也比较熟悉了。而且虚拟机有一个快照功能,可以保存当前虚拟机的状态 (相当于存档),这样如果后面出了问题要重新搭建环境,可以用快照回到上一个状态,这样就不用重头开始(我一般是安装好 ROS 拍一个、安装好 mavros 拍一个…)。 关于网络:由于一些懂得都得的原因,再加上每个人的网络环境不同,我们下载 GitHub上的资源、安装 Python 包、apt 安装包等会时快时慢,所以大家会换源,比如一开始的换 apt 软件安装源等。但是下载资源一定要耐心,如果是网络问题,可以尝试多执行几次命令,而且有些我也给了相应的解决方案。 1. 准备 1.1 下载源码 方式一: 从 Github 上下载,但是比较考验个人网速 sudo apt install git git clone https://github.com/PX4/PX4-Autopilot.git # 下载源码 mv PX4-Autopilot PX4_Firmware # 更改目录名 cd PX4_Firmware git checkout v1.14.0 # 切换版本 git submodule update --init --recursive # 更新下载子模块 方式二: 从提供的网盘里下,或者从QQ群(961297255)里下载 链接: 百度网盘 请输入提取码 提取码: rbrk 下载后解压,然后执行下面命令: cd PX4_Firmware wget https://gitee.com/tyx6/mytools/raw/main/px4/set_executable.sh chmod +x set_executable.sh ./set_executable.sh 1.2 安装依赖 sudo apt install ros-dev-tools cd ~/PX4_Firmware/Tools/setup 修改文件并备份 (就把 pip 安装源换成了清华源),这一步是可做可不做,如果觉得python 包下载太慢了,可以试试 sed -i.bak 's|\/requirements.txt|\/requirements.txt -i https:\/\/pypi.tuna.tsinghua.edu.cn\/simple|' ./ubuntu.sh chmod +x ubuntu.sh ./ubuntu.sh --no-nuttx --no-sim-tools # 这是官方提供的脚本 有两个可选参数 # --no-sim-tools 不安装仿真环境 # --no-nuttx 不安装交叉编译环境 #(如果需要自己编译飞控固件,烧录到飞控中,那就需要交叉编译环境) # 脚本执行时间,跟个人网络有关,可能需要一段时间 重启电脑 1.3 安装 Gazebo Gazebo是一款强大的3D仿真软件,主要用于机器人学的研究和开发。它提供了高度逼真的物理模拟环境,包括动力学、碰撞检测、传感器模型以及与真实世界相似的物理属性如重力、摩擦力等。Gazebo可以模拟各种类型的机器人,从移动机器人、无人机到机械臂,甚至可以模拟整个城市环境。 根据上图说明,Gazebo 官方做了更新将之前的 Gazebo Ignition 命名为 Gazebo,以前的 Gazebo 现在叫 Gazebo Classic ,而 Ubuntu 22.04 及以后的版本就支持 Gazebo (Gazebo Ignition) 。 因为几年前官方对 Gazebo 进行了重大架构变更,然后将变更后的版本叫 Gazebo Ignition,旧的仍叫 Gazebo。后面Gazebo Ignition 逐渐成熟并经过使用验证,所以他结束了旧的 Gazebo ( Gazebo 11 是 Gazebo Classic 的最后一个版本,支持到 2025 年 ),并重新对它们命了名。 cd ~/PX4_Firmware/Tools/setup ./ubuntu.sh --no-nuttx # 这一步会安装仿真环境,包括 gazebo # 脚本执行时间,跟个人网络有关,可能需要一段时间 再运行一下 gazebo : gz sim 2. 安装 Micro XRCE-DDS Agent 在 ROS2 中 PX4 使用 uXRCE-DDS 中间件来允许在配套计算机上发布和订阅 uORB 消息,就像它们是 ROS2 话题一样。这提供了 PX4 和 ROS2 之间快速可靠的集成,并使 ROS2 应用程序更容易获取车辆信息和发送命令,如上图所示。 这应该跟 ROS2 将中间件改为 DDS 有关,但是官方又说明了在 ROS2 中仍可以使用 MAVROS,可能官方觉得在 ROS2 中 Micro XRCE-DDS Agent 更好用 ,也可能是因为 MAVLink 是外部通信协议,uORB 是内部通信协议。 注:如果想用 Mavros 请参考这篇文章 ubuntu搭建PX4无人机仿真环境(2) —— MAVROS安装(适用于ROS1、ROS2)-CSDN博客 使用方法跟 ROS1 类似,这里不做描述。 Micro XRCE-DDS Agent 与 MAVROS 的对比(来自豆包AI,仅供参考) MAVROS 是 ROS(机器人操作系统)生态中连接 MAVLink 协议设备(如 PX4、ArduPilot 飞控)的主流工具,本质是 ROS 与 MAVLink 的桥梁。二者的核心差异体现在如下方面: 维度 Micro XRCE-DDS Agent MAVROS 核心定位 资源受限设备与 DDS 分布式网络的通信代理,支持多设备协同 ROS 与 MAVLink 设备(如飞控)的通信桥梁,专注无人机控制 生态兼容性 兼容 DDS 生态(如 Fast DDS、Cyclone DDS),可与非 ROS 系统集成 强依赖 ROS 生态,仅支持 ROS 节点与 MAVLink 设备交互 资源占用 客户端(Client)极轻量(适合 MCU 等嵌入式设备),Agent 本身资源消耗中等 依赖 ROS 节点和进程,资源占用较高(不适合极简嵌入式环境) 灵活性 支持自定义数据类型,可灵活扩展消息结构,适应复杂分布式场景 消息类型固定为 MAVLink 标准消息,扩展需修改协议或自定义消息 实时性 原生支持实时性配置(通过 DDS QoS),适合低延迟场景 实时性依赖 ROS 调度,默认配置下实时性中等 适用场景 无人机集群协同、多传感器分布式融合、跨平台设备互联 单无人机与 ROS 系统的通信(如地面站控制、数据日志、任务规划) 优点 1. 分布式架构,支持多设备协同; 2. 轻量级客户端适合嵌入式; 3. 可自定义消息,灵活性高; 4. 强实时性与 QoS 保障 1. 无缝集成 ROS 生态,开发便捷; 2. 成熟稳定,支持 MAVLink 全功能(控制、参数、日志等); 3. 社区活跃,问题易解决 缺点 1. 学习成本高(需理解 DDS 概念),目前资料相比于mavros少很多 ; 2. 与 ROS 集成需额外适配; 3. 对单设备简单通信场景略显复杂 1. 依赖 ROS,非 ROS 环境下使用不便,但非ROS环境也有其他基于mavlink的库可以使用 ; 2. 分布式多设备协同能力弱; 3. 资源占用较高,不适合极简嵌入式 下载源码: git clone -b v2.4.3 https://github.com/eProsima/Micro-XRCE-DDS-Agent.git 编译: cd Micro-XRCE-DDS-Agent mkdir build cd build cmake .. make # make 的时候还会下载代码,跟个人网速有有关,大概要10-20分钟 安装: sudo make install sudo ldconfig /usr/local/lib/ # 更新动态链接器的缓存 3. 编译 cd ~/PX4_Firmware make px4_sitl gz_x500 # 这步可能有点慢 出现这个表示编译成功 错误 :如果在虚拟机中可能遇到下面错误,这是由于在虚拟机设置中开启了 3D 图形加速,导致系统的 OpenGL 版本降低。 参考这个 Issue 中的解决方法,降低仿真使用的渲染引擎的版本 修改处大概在 73 行(PX4_Firmware/ROMFS/px4fmu_common/init.d-posix/px4-rc.simulator): sed -i 's/${gz_command} ${gz_sub_command} -g &/${gz_command} ${gz_sub_command} -g --render-engine ogre \&/' ~/PX4_Firmware/ROMFS/px4fmu_common/init.d-posix/px4-rc.simulator 错误 :如果编译过程中出现类似下面错误,应该是 gz_bridge 启动超时 INFO [gz_bridge] world: default, model name: x500_0, simulation model: x500 ERROR [gz_bridge] Service call timed out ERROR [gz_bridge] Task start failed (-1) ERROR [init] gz_bridge failed to start ERROR [px4] Startup script returned with return value: 256 参考下面链接中给出的解决方法 make px4_sitl gz_x500出错 - 哔哩哔哩 然后,再重新编译 4. 通信 打开一个终端,启动 MicroXRCEAgent: MicroXRCEAgent udp4 -p 8888 打开另一个终端,启动仿真: cd ~/PX4_Firmware make px4_sitl gz_x500 都启动后,可以看到通信成功 5. offboard 测试 创建工作空间: mkdir -p ~/ros2_ws/src 下载源码: cd ~/ros2_ws/src git clone https://github.com/PX4/px4_msgs.git git clone https://github.com/PX4/px4_ros_com.git 编译: cd ~/ros2_ws colcon build 更新环境: echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc source ~/.bashrc #使环境生效 测试: 先启动 QGC 地面站,然后执行下面命令,不然有可能无法起飞 终端一,启动 MicroXRCEAgent: MicroXRCEAgent udp4 -p 8888 终端二,启动仿真: cd ~/PX4_Firmware make px4_sitl gz_x500 终端三,启动官方 offboard 案例(上升5米): ros2 run px4_ros_com offboard_control 注:如果过了一段时间,无人机无法 offboard 起飞,程序都正常启动,这时可以尝试下面命令 cd ~/ros2_ws/src rm -f ./px4_msgs/msg/*.msg cp ~/PX4_Firmware/msg/*.msg ./px4_msgs/msg/ # rm -f ./px4_msgs/srv/*.srv # v1.15.0 之后 # cp ~/PX4_Firmware/srv/*.srv ./px4_msgs/srv/ # v1.15.0 之后 # cp ~/PX4_Firmware/msg/versioned/*.msg ./px4_msgs/msg/ # v1.16.0 之后 然后重新编译 source /opt/ros/humble/setup.bash cd ~/ros2_ws colcon build 编译成功后,记得 source 一下,再重新offboard测试 到这 PX4 无人机基本仿真环境就搭建完成了,大家可以基于此来拓展自己的仿真。 参考 PX4 ROS 2 User Guide PX4 documentation uXRCE-DDS PX4 Ubuntu Development Environment a-new-era-for-gazebo Unable to ros2 topic echo specific topics - PX4 Autopilot - Discussion Forum 如有其他问题,或者发现文章有错误,请在评论区留言 Keep learning! 1 个帖子 - 1 位参与者 阅读完整话题
如果大家想在虚拟机上改东西可以用codex更方便对小白来说, 以下是国内环境/腾讯云 Ubuntu 24.04 完美安装 Codex CLI 避坑指南 终于把国内云服务器和虚拟机上安装 Codex CLI 远程连接的逻辑彻底摸透了。如果你直接按照国外那些官方教程一步一步走,在国内的网络环境下,大概率会遇到两个让人抓狂的问题: 进度条死锁 :Node.js 和 npm 的官方服务器都在国外,国内直接下载经常卡在 0% 动弹不得,或者干连报错断开。 腾讯云“特产”报错 :如果你图省事直接用 Ubuntu 默认的 snap 去装,会和腾讯云后台自带的自动化助手( tat_agent )起冲突,直接弹出一长串关于 cgroup 的致命报错,软件根本打不开。 最稳妥的解决办法: 彻底放弃 snap 安装,直接在系统里装纯正的官方 Node.js 20,并 全程强行切换成国内淘宝镜像加速 。 以下是亲测 100% 成功的完整步骤: 第一步:虚拟机基础换源(仅本地虚拟机需要) 注:如果你用的是腾讯云、阿里云等公网服务器,服务商已经默认帮你配好了内网加速源,可以跳过这一步,直接从第二步开始。 如果你是在自己电脑上用 VMware 或 VirtualBox 装的本地虚拟机,先在终端运行下面这行命令,把软件源一键切到国内清华大学镜像,给后面的组件下载提速: sudo sed -i 's//archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list.d/ubuntu.sources sudo sed -i 's//security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list.d/ubuntu.sources sudo apt update && sudo apt upgrade -y 第二步:一键配置 Node.js 20 环境 Codex CLI 必须要依靠 Node.js 环境才能运行。我们直接把官方最新的 20.x 维护源注入到系统里,然后进行安装: export DEBIAN_FRONTEND=noninteractive curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt-get install -y nodejs 第三步:走国内镜像秒杀安装 Codex CLI 有了真正可用的 nodejs 和 npm 后,全局安装 Codex 时必须加上国内淘宝镜像源( npmmirror )的加速后缀,不然极易卡死: sudo npm install -g @openai/codex --registry=https://registry.npmmirror.com --unsafe-perm=true (换成国内镜像后,原本可能卡几个小时的下载,现在只要 5 到 10 秒就能瞬间秒杀完成。) 第四步:写入远程连接配置并刷新 安装完后,我们还需要手动帮 Codex 建立一个配置文件,告诉它允许接受来自 Windows 客户端的远程连接。 直接复制并运行以下命令: # 1. 创建配置文件夹并写入开启参数 mkdir -p ~/.codex cat > ~/.codex/config.toml << EOF [features] remote_connections = true EOF # 2. 修复环境变量路径,防止终端找不到 codex 命令 if ! grep -q "/usr/local/bin" ~/.bashrc; then echo 'export PATH="$PATH:/usr/local/bin:/usr/bin"' >> ~/.bashrc fi source ~/.bashrc 第五步:大功告成,验证结果 最后,在终端输入: codex --version 只要屏幕上老老实实吐出了 codex-cli 0.137.0 (或者类似的最新版本号),就说明服务器/虚拟机端已经完美搞定了,而且绝对不会再弹腾讯云后台冲突的报错! 有人看的话下期分享如何将codex连接云服务器,虚拟Ubuntu 这种有点小麻烦需对应还要生成,因为不让设置https 1 个帖子 - 1 位参与者 阅读完整话题
站内搜索了下,有个修复工具,但那个工具没有ubuntu版本。回退的话又用不了最新模型。请问有什么办法吗 8 个帖子 - 6 位参与者 阅读完整话题
如下图所示,使用ibus+rime 的方式,但是不喜欢全部文字都用全拼的方式,简拼怎么优化 9 个帖子 - 7 位参与者 阅读完整话题
IT之家 6 月 8 日消息,因多人跳跃游戏 《Bunny Guys!》意外爆红 而受到外界关注的独立开发者 Ares-X 宣布旗下休闲模拟游戏 《Relaxing Simulator》在 Epic 游戏商店开启限时免费“喜加一”领取活动, 本作在国区定价为 25 元,玩家可以在北京时间 6 月 15 日凌晨 1 点前领取 ,IT之家附 Epic 商品页( https://store.epicgames.com/p/relaxing-simulator-4cca47 )。 据介绍,《Relaxing Simulator》是一款专门为了“放松”而设计的步行模拟类作品。游戏没有主线剧情、没有敌人、没有失败机制,也不存在任何强制目标,玩家唯一需要做的事情,就是在游戏世界中放空和发呆。 虽然整体玩法极度佛系,但游戏依然内置了一些轻量级成就挑战,以及带有恶搞意味的全球排行榜。官方甚至调侃称,这些设计是专门为那些“一边挂机一边怀疑自己为什么会玩这个游戏”的玩家准备的。 除此之外,《Relaxing Simulator》还支持自由调整天气与光照效果,玩家能够根据自己的心情改变整体氛围。无论是单纯欣赏风景、坐在篝火旁发呆,还是毫无目的地在地图中漂流,都属于游戏体验的一部分。 更有意思的是,这款几乎“没有玩法”的游戏居然还支持多人联机功能。玩家可以和朋友一起在地图里闲逛、挂机、聊天,共同享受一种没有任务与目标束缚的“电子散步”体验。 游戏图赏:
小白学Epoll网络编程2 实战 我们这里使用一台Ubuntu24虚拟机,vscode使用ssh连接到这台机器,然后就可以开始调试了 命令 g++ -o server ./server2.cpp ./common/common.cpp -I . g++ client.cpp -o client 经历了1和2后我们现在已经有了能够运行的代码,那么如何在linux上使用gdb调试他呢?不能一直用print然后看输出来调试吧, 我们要有单步 堆栈和变量!本节就是总结在linux上的调试方法(针对单文件 项目的我还没学) 我们使用g++在linux上进行调试,首先我们要先编译出一个debug版本,这里从基础说起 通用知识 如何编译一个程序 我们的目录结构是 ├── common │ ├── common.cpp │ └── common.h └── server.cpp 其中的结构是server.cpp include了common.h,common.cpp又是common.h的实现 g++ A.cpp B.cpp -o output -I . 这里涉及到一些编译原理的内容,因为编译器实际上并不会单独处理头文件(头文件不是编译单元),他只处理.cpp,头文件只是一种便利的声明,在被include到文件后会被展开,如 // header.h void functionA(); void functionB(); // impletion.cpp #include "header.h" void functionA(){ 实现 } void functionB(){ 实现 } // main.cpp #include "header.h" int main(){ } 实际上主main和impletion会被展开成 // impletion.cpp void functionA(); void functionB(); void functionA(){ 实现 } void functionB(){ 实现 } // main.cpp void functionA(); void functionB(); int main(){ } 如果你自己每个文件都手敲声明的话比较麻烦,所以c++允许你写到一个单独的文件里然后include他们。但是对编译器来说,在头文件被展开后就不单独看了;到了编译这一步头文件已经被展开到各个实际的文件里了。所以回到刚才的话题,我们要传给g++的参数是server.cpp和common.cpp,即头文件的实现文件和主文件。 -o表示你要输出的二进制的文件名,如output,-I表示搜索头文件的根目录,编译器在展开头文件的阶段会找include提到的文件名;我们的头文件放在当前文件夹的common下,就从当前文件夹开始搜索,写common也行,但是以后可能还有别的文件夹,直接从当前文件夹开始方便以后扩展。 如何编译出debug版本的程序 主要是两点 添加调试信息 -g 关闭大部分优化 -O0 g++ A.cpp B.cpp -o output -I . -g -O0 -O(大写)后面跟的数字是优化等级,可以是0 1 2 3 s等等,代表不优化/基础/通用/激进/体积 我们一般的release版本优化的等级就是-O2, debug版本自然要比2低,这里直接选0, 防止优化过度导致调试的时候断点乱跳/缺失信息 额外的警告 为了开启所有警告还要加上 -Wall 所有常见警告(不是所有警告 是所有常见) -Wextra 额外警告 -Wpedantic 迂腐的 严格的检查是否符合指定的c++标准,无扩展无非标准写法,有的话警告 g++ -std=c++17 A.cpp B.cpp -o output -I . -g -O0 -Wall -Wextra -Wpedantic 最终的命令变成了这样 kisaragi@ubuntu24:~/Documents/Epoll$ g++ -std=c++17 server2.cpp common/common.cpp -g -O0 -Wextra -Wall -Wpedantic -o testDebug 编译成功 我们得到了testDebug二进制文件 古法 直接使用GDB 打开你的终端,使用gdb 二进制文件 命令来调试 可以通过file 二进制文件 来查看二进制的信息 正常的应该是with debug_info, not stripped,表示有调试信息,符号未被剥离,这里我们自己编的,应该不会错 启动命令,正式进入到gdb的界面中 但是还没显示代码,按ctrl+x后按a键打开代码显示,效果如下,看起来就清晰多了 gdb里的操作都是通过在(gdb)后面打命令实现的,如next, step,break等等; gdb有很多命令,对于习惯windows调试的我们来说,首先要找出怎么打断点,怎么继续,怎么进入函数, 怎么查看堆栈 流程基础操作 F5继续-->continue F10下一行-->next F11进入-->step 我们尝试在main上打一个断点,打断点的命令是 break 函数名或者行号 ,我们直接berak main(),就在main函数上打了个断点, 代码旁边也会显示一个小小的标志,现在可以直接将程序运行起来, 命令是run,等待一会,程序就会断在main第一行了 B+旁边的>角标就是当前行的指示器,我们输入两个next,让他运行到190行,然后看看threads的内容,查看变量的内容是 也可以直接通过start来启动,他的作用和在main上打个断点然后run是一样的 查看变量 print 变量 可以看到目前还没有内容,这是对的,因为刚初始化,监视变量也很简单,使用watch 变量 就可以进行监视, watch threads ,当threads被改变时就会断住。 想要删除断点/监视也很简单,使用 info breakpoints 查看所有断点 这里可以看到有我们在main里打的,还有刚刚watch的变量,然后我们就可以通过disable 编号 或者 delete 编号来编辑了,如这里删除3号断点,使用delete 3,再查看就没有了 断点操作 break 行号/函数名() 打断点 info breakpoints 查看断点 delete 断点 现在我们随便进一个函数看看,比如threads.push_back()的push_back方法,先运行到这一行,然后输入step就可以进入了 进出函数 step 相当于f11进入 finish 相当于shift+11出函数 成功进入,不想看了就输入finish,就可以进入上一级,相当于shift+f11, 如果你已经step进入很深了,需要多几次才能出去。也可以直接在外面打断点然后continue,和我们在windows上使用都是一样的 调用堆栈 bt或backtrace 常用的就这些命令,玩够了,打quit直接退出 使用vscode 直接使用vscode的remote ssh插件连接到你的服务器,打开文件夹(关于这个插件的使用可以网上搜教程) 终端里tree一下(tree .),复制文件夹结构 ├── common │ ├── common.cpp │ └── common.h └── server.cpp 在你的源码目录下新建一个.vscode文件夹,里面新建个launch.json,然后打开ai: 我想要用gdb调试程序,需要/不需要编译,给我写一个vscode里的launch.json,操作系统是xxx, 文件夹结构如下: ├── common │ ├── common.cpp │ └── common.h └── server.cpp ai直接拿捏,这里因为我说需要编译, ai把tasks.json也补上了,都拷贝进来就好了 然后打开你的源代码,在vscode里按F5,选择使用g++或类似的选项(使用gdb?可能),ai的配置写的没错就可以顺利启动了 这时直接就可以看到堆栈,断点,监视,变量等信息,比gdb要现代化的多,但他的信息其实也是从gdb里取的,只是换了种展示形式;现在你可以像在windwos里一样调试程序了 本节完 3 个帖子 - 2 位参与者 阅读完整话题
之前用的flclash,但是老板本的tun模式堆栈一直有问题,以至于反重力登陆一直登不上。最新版本不适配22.04,依赖问题很麻烦。 后来网上随便找了一个,反重力能登上了但是tun模式一直不太稳定,codex和cursor经常性超时 5 个帖子 - 5 位参与者 阅读完整话题
旧的个人主页太拉了,前阵子重新 vibe 了个新主页,然后在porkbun 上淘了个新的域名(一年仅需 5.2 刀,续费没那么肉疼了。) 独立开发者整个个人主页还是很重要的,主页开源放到我的 github 了。 主页: https://sn0w.fyi 佬友们也分享下自己的个人主页呗 5 个帖子 - 3 位参与者 阅读完整话题
我有一台没有GUI的ubuntu云服务器,我想用来做claude开发,就是自己的一些小项目,目前是用Termius通过sh连接到服务器然后控制claude,然后发现没有GUI的系统用不了cc-switch,跳不过claude登录也无法配置供应商,想问下佬有没有什么好办法 3 个帖子 - 3 位参与者 阅读完整话题
如题,目前工作流是工位连着家里的软路由下面挂的ubuntu。 然后mesh搞了个大局域网。借助美国伪家宽出口访问claude,日常从家里调用文件。 一切都还行,上一个弹性公网IP 挂了三个月没换过了。114.249.115.192 但是昨天家里装空调,师傅没给我打招呼直接拉电闸了。导致重新拨号。 我的上一个IP就没了。。。。换成了114.249.119.XX ikuai上面的弹性域名 阿里云的没及时跟进,所以昨天提前下班开车回家去修了。。 cloudflare的貌似还行。 北京联通的固定公网IP业务貌似要100一个月,感觉有些贵啊。。毕竟我的宽带一月才109.。。 有什么好的办法能搞个固定公网IP吗(便宜一些的套餐,比如联通内部人员XD)。 我家小区我看应该是114.249.112.??? 子网不知道咋分的 114.249.64.0/18 可能是北京昌平? 另外我想知道是不是我的 动态公网设置有问题。api虽然走的 是 阿里云的。 但是我的域名NS在cloudflare 然后我分出来了 一个三级域名 NS给了阿里云 专门跑动态域名。昨天拉闸的时候后续半小时收到了解析变动短信,但是后面自己查验发现ikuai上没有改。 反倒是 cloudflare的跟进了。。。 哎= = 17 个帖子 - 6 位参与者 阅读完整话题
我之前选择 Ubuntu + Docker 开发,但是遇到了 Docker in Docker 需要特权模式的问题,转而使用 Windows + Vmware + Mint 开发了,但是在虚拟机里面启动 Android 模拟器会直接导致 Mint 崩溃,问问大家有遇到过这个问题的吗?
我之前选择 Ubuntu + Docker 开发,但是遇到了 Docker in Docker 需要特权模式的问题,转而使用 Windows + Vmware + Mint 开发了,但是在虚拟机里面启动 Android 模拟器会直接导致 Mint 崩溃,问问大家有遇到过这个问题的吗?
我之前选择 Ubuntu + Docker 开发,但是遇到了 Docker in Docker 需要特权模式的问题,转而使用 Windows + Vmware + Mint 开发了,但是在虚拟机里面启动 Android 模拟器会直接导致 Mint 崩溃,问问大家有遇到过这个问题的吗?
我之前选择 Ubuntu + Docker 开发,但是遇到了 Docker in Docker 需要特权模式的问题,转而使用 Windows + Vmware + Mint 开发了,但是在虚拟机里面启动 Android 模拟器会直接导致 Mint 崩溃,问问大家有遇到过这个问题的吗?
我之前选择 Ubuntu + Docker 开发,但是遇到了 Docker in Docker 需要特权模式的问题,转而使用 Windows + Vmware + Mint 开发了,但是在虚拟机里面启动 Android 模拟器会直接导致 Mint 崩溃,问问大家有遇到过这个问题的吗?
我也觉得怪! 没啥感觉 点击以查看投票。 起因是猫猫最近装了ubuntu之后 vibecoding的热情又一次高涨起来(agent时代一等公民确实用起来超级爽) 然后猫猫发现… 戴耳机的时候 音乐声把键盘和鼠标声盖过去了 然后打字感觉就变得就很奇怪了 有佬有同感吗~ 顺便一水:猫猫的学校要做高考考场 可以放五天假ww 4 个帖子 - 4 位参与者 阅读完整话题