
Linux系统编程
文章平均质量分 64
捕鲸叉
C++软件架构与开发工程师 擅长Windows/Linux/Macos 和Arm/STM32下C++软件开发,熟悉QT/MFC/STL/BOOST/VTK/ITK等开发库,熟悉应用程序与设备驱动程序(内核)开发
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
vim常用快捷键问答之二
vim查找/替换快捷键和操作模式切换快捷键原创 2024-09-06 11:59:21 · 1685 阅读 · 0 评论 -
vim常用快捷键问答
vim常用快捷键汇总原创 2024-08-31 11:45:52 · 1071 阅读 · 0 评论 -
GDB快捷键问答之09 窗口分屏操作
GDB分屏操作原创 2024-09-06 14:56:26 · 873 阅读 · 0 评论 -
GDB快捷键问答之08 调试运行程序
GDB调试运行快捷键原创 2024-09-06 14:51:20 · 762 阅读 · 0 评论 -
GDB快捷键问答之07 查看寄存器和反汇编代码
GDB查看反汇编和寄存器原创 2024-09-06 14:44:31 · 742 阅读 · 0 评论 -
GDB快捷键问答之06 线程列表操作
在 GDB 中,当断点触发时,你可以显示进程的线程列表,并选择某个线程查看其函数调用栈信息。GDB在断点触发时,怎样显示进程的线程列表,并指定某个线程,查看其函数调用栈信息?这些操作可以帮助你在多线程程序调试时,准确地查看和分析不同线程的执行状态和调用栈。原创 2024-09-06 14:41:19 · 531 阅读 · 0 评论 -
GDB快捷键问答之05 函数调用栈操作
在 GDB 中,当断点触发时,查看当前函数调用栈的信息以及在调用栈中回溯查看各个函数中的变量值是调试程序时非常重要的操作。GDB在断点触发时,怎样查看当前函数调用栈的信息?怎样在调用栈中回溯调用栈中各个函数中的变量值等?这些操作可以帮助你在调试过程中深入了解程序的执行状态和变量的具体值。原创 2024-09-06 14:38:13 · 479 阅读 · 0 评论 -
GDB快捷键问答之04 怎样查看内存块
GDB查看内存块原创 2024-09-06 14:34:50 · 795 阅读 · 0 评论 -
GDB快捷键问答之03 变量查看
在 GDB 中,当断点触发时,你可以查看函数的自动变量和局部变量,并且可以查看断点所在函数的源代码。GDB在断点触发时, 怎样查看函数的自动变量和局部变量?怎样查看断点所在函数的源代码?这些命令可以帮助你在调试过程中更好地理解和检查代码的状态。原创 2024-09-06 14:32:32 · 763 阅读 · 0 评论 -
GDB快捷键问答之02 怎样管理断点
GDB断点管理原创 2024-09-06 14:21:45 · 1064 阅读 · 0 评论 -
GDB快捷键问答之01 源代码操作
GDB源代码操作快捷键原创 2024-09-06 14:09:30 · 1153 阅读 · 0 评论 -
Makefile问答之01 管理代码文件
Makefile管理代码文件原创 2024-09-06 16:53:32 · 1071 阅读 · 0 评论 -
Makefile问答之05 预定义变量与等号运算符
在 Makefile 中,预定义变量(自动变量)用于在规则中引用目标文件、源文件、目录等信息。以下是一些常用的 Makefile 自动变量及其用途,以及相应的示例。在 Makefile 中,等号类运算符用于定义和处理变量。以下是常用的等号类运算符及其用途说明,并附带示例。通过合理使用这些自动变量,你可以编写更加灵活和通用的 Makefile,提高构建过程的效率和可维护性。这些运算符使得 Makefile 在处理变量时更为灵活,可以适应不同的需求和场景。Makefile等号类运算符有哪些,请举例说明。原创 2024-09-06 17:04:20 · 711 阅读 · 0 评论 -
Makefile问答之 04 优化异常与警告设置
在 Makefile 中,你可以通过设置编译器的选项来管理 C/C++ 编译警告。在 Makefile 中,你可以通过设置编译器的选项来指定 C/C++ 异常处理选项。在 Makefile 中,你可以通过设置编译器和链接器的选项来指定优化选项。优化选项可以分为编译优化和链接优化,以下是如何在 Makefile 中指定这些选项,以及一些常用的选项。选择适当的优化选项可以显著提高程序的性能或减小生成代码的体积,但也可能会增加编译时间。Makefile怎样指定优化选项,包括编译和链接优化,常用的选项有哪些?原创 2024-09-06 17:01:55 · 1276 阅读 · 0 评论 -
Makefile问答之03 预编译头
Makefile之预编译头原创 2024-09-06 16:57:29 · 575 阅读 · 0 评论 -
Makefile问答之02 预处理器与宏
Makefile预处理器与宏原创 2024-09-06 16:55:51 · 879 阅读 · 0 评论 -
MS VC 2022开发Linux应用记录之01篇
13. 在代码中设置断点,按F5进行调试。单步运行,可以从Linux终端中看到一步步的输出。14.也可以在虚拟机的~/.vs目录下找到上述C++项目,并可运行生产的目标程序。12. 生成程序,可以在linux终端中运行该程序。原创 2023-07-22 23:03:29 · 383 阅读 · 0 评论 -
linux下抓取C++ throw调用栈
使用API钩子技术,抓取throw调用的调用堆栈。1. hook_cxa_throw-lys.hpp#pragma once#include <dlfcn.h>#include <cstddef>#include <exception>#include <signal.h>#include <execinfo.h>#include <ucontext.h>#include <thread>#i原创 2022-05-25 22:16:26 · 635 阅读 · 0 评论 -
在Linux下(深度OS)中编译运行3D Slicer软件
在深度OS(Linux)中编译运行3D Slicer的步骤原创 2022-04-16 13:10:40 · 1508 阅读 · 0 评论 -
Linux下从一个线程获取另一个线程的函数调用堆栈并生成转储文件
1. 使用发信号方式,在信号处理函数中调用: "sudo gcore %d", getpid()#include <stdio.h>#include <stdlib.h>#include <signal.h>#include <execinfo.h>#include <iostream>#include <chrono>#include <thread>#include <ucontext.h>原创 2022-03-30 10:25:31 · 609 阅读 · 0 评论 -
Linux 下从一个线程检查另一个线程的函数调用栈
1. 代码 main.cpp#include <stdio.h>#include <stdlib.h>#include <signal.h>#include <execinfo.h>#include <iostream>#include <chrono>#include <thread>#include <ucontext.h>void handler(int signo, siginfo原创 2022-03-29 21:36:04 · 352 阅读 · 0 评论 -
使用gcore生成当前崩溃进程生成dump文件并定位错误
使用gdb调试当前崩溃进程生成dump文件并定位错误1. 源代码 main.cpp#include <stdio.h>#include <signal.h>#include <stdlib.h>#include <stdarg.h>#include <unistd.h>static void signal_handler(int);static void dumpstack(void);static原创 2022-03-27 19:39:22 · 1359 阅读 · 0 评论 -
使用信号机制在Linux程序中打印函数调用栈
#include <stdio.h>#include <stdlib.h>#include <signal.h>#include <execinfo.h>#include <ucontext.h>void handler(int signo, siginfo_t *info, void *context){ ucontext_t* ctx = (ucontext_t*)context; void *.原创 2022-03-22 13:55:35 · 772 阅读 · 0 评论 -
在深度OS中编译MRtrix步骤
在终端窗口执行下面的操作1. 安装开发工具sudo apt-get install git g++ python libeigen3-dev zlib1g-dev libqt5opengl5-dev libqt5svg5-dev libgl1-mesa-dev libfftw3-dev libtiff5-dev libpng-dev2. 安装QT3. 下载MRtrix源代码git clone https://github.com/MRtrix3/mrtrix3.git4.原创 2022-03-11 10:10:35 · 8933 阅读 · 0 评论 -
gcc编译过程
编译GCC原创 2021-12-04 20:08:22 · 448 阅读 · 0 评论 -
2021-06-23
[root@localhost ~]# cat /usr/share/applications/Lxg.desktop[Desktop Entry]Name = LxgType=ApplicationExec=/home/lys/Lxg/Lxg.shIcon=input-mouseCategories=Development[root@localhost ~]# chmod +x /usr/share/applications/Lxg.desktop[root@localhos原创 2021-06-23 18:48:10 · 87 阅读 · 0 评论 -
vim常用指令类表
最近开始Linux环境下编程,有时需要使用vim浏览和修改代码,特意学习了一下,并整理了一些常用指令,如下图所示。原创 2021-06-04 23:08:53 · 464 阅读 · 0 评论