gcc 使用-Wl,-rpath 解决 so 库版本冲突

一、 问题描述 最近工作中遇到了一个问题:项目需要合入其他部门的模块,但是其中的一个共用共享库被更新了。因为项目很大,如果直接在我们的环境中替换更新这个库,很有可能会影响到其他模块。祖传的代码流传了差不多 20 年,涉及的模块也十分之多,贸然升级的风险很难评估。但是不替换这个库第三方模块又跑不起来,一度 ... 阅读更多

c 语言可变长参数传递问题

一、问题描述 C 语言中的函数提供了一种可变长参数机制,这个机制使得我们在操作的时候充分自定义自己的功能,例如使用最多的 printf 函数:

它的函数声明为:printf(const char *fmt, ...);,其中的... 就代表不 ... 阅读更多

程序的编译和链接过程

一、概述 一个程序在从源码变成二进制程序之间一共有四个步骤:预处理,编译,生成目标文件,链接。 以下展示了一个简单的加法程序的编译过程:

二、预处理 预处理阶段主要有以下的操作: 头文件替换 宏定义替换 删除注释 预处理指令处理 在 G ... 阅读更多

112-路径总和

作者:LeetCode 链接:112. 路径总和 来源:力扣 (LeetCode) 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 一、题目描述 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 说明:叶子节点是指没有子节 ... 阅读更多

nginx 使用 fancyindex 目录索引

一、 nginx 目录索引 nginx 中内置了目录索引命令 auto_index ,十分方便就能给目录生成 web 索引:

效果如下: 两个可选的命令是 autoindex_exact_size 和 autoindex_localtime , ... 阅读更多

安装 EXSI 遇到 No Network Adapters 的解决方案

一、问题描述 安装 esxi 途中遇到了找不到网卡驱动的问题: 这是因为 iso 文件中本身没有添加当前设备网卡的驱动,需要手动导入属于自己网卡的的驱动。 第一步先确定自己的网卡型号:

我这里有两块网卡,一个有线网卡 Realtek 8111 ... 阅读更多