摘要:一、安装openssl 制作 OpenSSL 的头文件和静态库通常涉及以下步骤: 1. 获取 OpenSSL 源代码 首先,你需要从 OpenSSL 的官方网站或 GitHub 仓库下载最新的源代码。 git clone https://github.com/openssl/openssl.git
阅读全文
摘要:如果你想在安装 Protocol Buffers(protobuf)时指定安装目录,可以在编译和安装过程中使用 --prefix 选项来指定安装路径。以下是从源代码编译安装 protobuf 并指定安装目录的详细步骤: 下载 protobuf 源代码: git clone https://githu
阅读全文
摘要:一、下载apache cgi的安装包(mac电脑) 官网地址:https://httpd.apache.org/download.cgi 二、基于源码进行安装 2.1、macos电脑 ①源码文件进行解压后,然后进入到目录中,执行配置命令 shangxiaofei@XXSHANG-MC0 apache
阅读全文
摘要:一、动态链接 在 g++ 命令中,使用 -l 选项可以将指定的库文件链接到生成的可执行文件中。如果库是动态链接库(.so 文件),则使用 -l 选项时不需要指定库文件的扩展名。 例如,假设有一个名为 libfoo.so 的动态链接库,要在链接时使用它,可以执行以下命令: g++ -o myprog
阅读全文
摘要:https://blog.csdn.net/qq_20817327/article/details/105587309
阅读全文
摘要:一、ar的基本用法 ar命令可以用来创建、修改库,也可以从库中提出单个模块。库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member)。原始文件的内容、模式、时间戳、属主、组等属性都保留在库文件中。 下面是ar命令的格式: ar [-]{dmpqrtx}[abc
阅读全文
摘要:https://blog.csdn.net/bashendixie5/article/details/139563940jsoncpp制作静态库:https://blog.csdn.net/qq_48383456/article/details/136165390
阅读全文
摘要:https://blog.csdn.net/weixin_45962068/article/details/135981216
阅读全文
摘要:在C++编程中,掌握一些常用的命令行工具和命令也是非常重要的。这些命令可以帮助你编译、构建、调试和部署你的C++项目。以下是一些常用的C++命令行工具和命令: 1、G++/GCC 1. **g++**:g++是GCC(GNU Compiler Collection)的一部分,它是一个功能强大的C++
阅读全文
摘要:前面利用 3 节的内容,分别介绍了 GDB 调试器支持在被调试程序中打断点的 3 种方法,即 break、watch 以及 catch 命令。在此基础上,本节给大家讲解:如何借助断点对程序进行调试?通过在程序的适当位置打断点,观察程序执行至该位置时某些变量(或表达式)的值,进而不断缩小导致程序出现异
阅读全文
摘要:《调用GDB调试器的几种方式》一节中提到,借助 next 命令可以控制 GDB 单步执行程序。所谓单步调试,就是通过一行一行的执行程序,观察整个程序的执行流程,进而尝试发现一些存在的异常或者 Bug。根据实际场景的需要,GDB 调试器共提供了 3 种可实现单步调试程序的方法,即使用 next、ste
阅读全文
摘要:前面章节给大家介绍了 GDB 调试器中普通断点、观察断点以及捕捉断点的功能和用法。其中值得一提的是,对于普通断点的建立,可以使用如下格式的 break 命令: (gdb) break ... if cond ... 参数用于指定生成断点的具体位置;cond 参数用于代指某个表达式。通过此方式建立的普
阅读全文
摘要:要知道,GDB 调试器支持在被调试程序中打 3 种断点,分别为普通断点、观察断点和捕捉断点,其中普通断点用 break 命令建立(可阅读《GDB break》一节),观察断点用 watch 命令建立(可阅读《GDB watch》一节),本节将讲解如何使用 catch 命令建立捕捉断点。和前 2 种断
阅读全文
摘要:《GDB break命令》一节,给大家介绍了使用 break 命令在程序某一行的位置打断点。但还有一些场景,我们需要监控某个变量或者表达式的值,通过值的变化情况判断程序的执行过程是否存在异常或者 Bug。这种情况下,break 命令显然不再适用,推荐大家使用 watch 命令。 要知道,GDB 调试
阅读全文
摘要:默认情况下,程序不会进入调试模式,代码会瞬间从开头执行到末尾。要想观察程序运行的内部细节(例如某变量值的变化情况),可以借助 GDB 调试器在程序中的某个地方设置断点,这样当程序执行到这个地方时就会停下来。所谓断点(BreakPoint),读者可以理解为障碍物,人遇到障碍物不能行走,程序遇到断点就暂
阅读全文
摘要:使用 GDB 调试器调试程序的过程,其实就是借助 GDB 调试器来监控程序的执行流程,进而发现程序中导致异常或者 Bug 的代码。通过前面章节的学习,读者已经学会了如何启动 GDB 调试器,在此基础上,本节继续为大家讲解如何在 GDB 调试器中启动(运行)程序,以及启动程序过程中的一些注意事项。根据
阅读全文
摘要:上一节演示了用 GDB 调试 C(或者 C++)程序的整个过程,其中对myapp文件启动 GDB 调试,执行的指令为: xxshang@VM-212-227-tencentos sxftest]$ gdb myapp --silent Reading symbols from myapp... 要知
阅读全文
摘要:一、如下是一段可以正常运行的C++代码 #include <iostream> #include <stdio.h> using namespace std; int main () { unsigned long long int n, sum; n = 1; sum = 0; while (n
阅读全文
摘要:一、GDB是什么 GDB 全称“GNU symbolic debugger”,从名称上不难看出,它诞生于 GNU 计划(同时诞生的还有 GCC、Emacs 等),是 Linux 下常用的程序调试器。 发展至今,GDB 已经迭代了诸多个版本,当下的 GDB 支持调试多种编程语言编写的程序,包括 C、C
阅读全文
摘要:后序¶ 终于到写结束语的时候了,以上基本上就是GNU make的Makefile的所有细节了。其它的厂商的make基本上也就是这样的,无论什么样的make,都是以文件的依赖性为基础的,其基本是都是遵循一个标准的。这篇文档中80%的技术细节都适用于任何的make,我猜测“函数”那一章的内容可能不是其它
阅读全文