简 述: 在 Mac 下安装和调用 gdb 调试程序。和 gdb 一些常用的使用参数含义。
简 述: 在 mac 使用 gdb 调试程序时候,会遇到报错如下,本文就是专门解决这个问题的。
(gdb) run
Starting program: /Users/muli/project/github/linuxExample/06_gdb/mainApp
Note: this version of macOS has System Integrity Protection.
Because `startup-with-shell' is enabled, gdb has worked around this by
caching a copy of your shell. The shell used by "run" is now:
/Users/muli/Library/Caches/gdb/bin/zsh
Unable to find Mach task port for process-id 20050: (os/kern) failure (0x5).
(please check gdb is codesigned - see taskgated(8))
在 MacOS 10.14.6 的系统下,发现安装 gdb 8.3 (当前最新) 的坑不是一般的多,那真真的多。鉴于网上的教程都是过时的,且按照某一篇, 你是不可能顺利运行安装成功的。所以浪费我昨天一个晚上解决这个问题(我的时间也很宝贵的),今天又花费一晚上时间,完成这篇图文并茂的的安装教程。作为一个日后的记录和给后来者一个方便。
也是目前网上最新最详细的在 mac 安装 gdb 的教程 ;其中大概思路:
- 创建整证书,证书授权
- 关闭 SIP 安全防护,重启系统;
- sudo 运行 gdb 调试;
- kill 卡死进程, 再次重新 gdb 调试;
- 成功
简 述: 在 Uinx / Linux
下,写下这篇适合小白学习的入门教程,理解 make
,makefile
文件。和开始编写自己的 makefile
文件,使用 make
命令执行,生成我们所需要的项目。
简 述: 二十岁的所困惑所思考: 人的一生七八十年,到底该如何度过?入社会之前又该如何准备?
简 述: 本篇只是说说怎么将刚买的域名绑定到自己的博客; 又如何白嫖一年的 SSL 证书,给你博客网站访问去掉不安全 访问标签,使用 https 访问博客网址。
简 述: 楔子,二十岁的所困惑所思考
简 述: 继 上一篇。本篇就继续实践踩坑,实现在Linux上面,使用gcc编译动态库.so,文件,且调用动态库。此处例子实际:使用g++8.3.0在uos20(Linux)平台下完成这个知识点的实践教程。
简 述: 在Linux系统下,使用gcc来编译,生成静态库,且调用静态库.a文件,生成可执行程序。此处例子实际:使用g++9.2在mac平台下完成这个知识点的教程。在 下一篇 踩坑生成动态库的.so制作和使用。
简 述: 在 uinx/Linux 下,使用 gcc 的工作流程:预处理,编译,汇编,链接。 这里实际测试,举例分析:使用 g++(用 c++)的编译 main.cpp ,最终得到可执行程序的过程分析。
简 述: 在上一篇中,最后为了测试 gcc 9.2.0 版本的安装是否成功。对创建的测试文件 main.cpp 文件,执行 gcc-9 main.cpp -o mainApp -lstdc++
命令;虽然最后运行成功了;但是是始终是有一点困惑:
- 调用 gcc 和 gcc-9❗️
- 能否自动执行 gcc 的时候,去掉
-lstdc++
,使得看起来清爽起来 ⁉️
最后查询一下。发现其中另有一番天地,差点就错过了。 本章主要讲解 gcc 和 g++的区别,编译.c和.cpp文件的区别 ❓