- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 第三方静态库的打包方法
静态库打包发布方法已经提供了一个动态库(.so)或静态库(.a)给其它业务使用,而发布的这个库额本身又依赖了其它的一些第三方库。但是,我们期望业务对这些依赖库无感知,依赖库的变化和增加对业务的编译无影响。即,需要实现在发布动态库(.so)或静态库(.a)的时候把依赖的第三方静态库链接进来。针对发布动态库(.so)和静态库(.a)时的打包链接第三方依赖库的方法,工程目录结构.├── include│ ├── testa.h│ ├── testb.h│ └── testc.h├──
2021-02-05 16:13:22 1644
原创 Ninja使用教程
Ninja使用教程Created: Dec 6, 2020 8:20 PMTags: 工具软件简介Ninja 是Google的一名程序员推出的注重速度的构建工具,一般在Unix/Linux上的程序通过make/makefile来构建编译,而Ninja通过将编译任务并行组织,大大提高了构建速度。Ninja的目标是成为汇编程序。构建系统在需要做出决策时变得缓慢。当您处于编辑 - 编译周期时,您希望它尽可能快 - 您希望构建系统执行必要的最少工作以确定需要立即构建的内容。Ninja包含描述任意依赖图
2020-12-13 16:18:21 4793
原创 Ninja使用教程
Ninja使用教程软件简介Ninja 是Google的一名程序员推出的注重速度的构建工具,一般在Unix/Linux上的程序通过make/makefile来构建编译,而Ninja通过将编译任务并行组织,大大提高了构建速度。Ninja的目标是成为汇编程序。构建系统在需要做出决策时变得缓慢。当您处于编辑 - 编译周期时,您希望它尽可能快 - 您希望构建系统执行必要的最少工作以确定需要立即构建的内容。Ninja包含描述任意依赖图所需的最基本功能。它缺乏语法使得无法表达复杂的决策。相反,Ninja旨在与
2020-12-06 21:08:03 11831
原创 malloc函数分配的内存,free后任然可以访问?
先来看下现象:#include <stdlib.h>#include <stdio.h>#include <string.h>int main(){ char *buff = (char *)malloc(10); memcpy(buff, "test", 10); printf("buff = %s, buff address = %x\n", buff, buff); free(buff); printf("buff
2020-12-04 10:51:46 1236
原创 一文搞定C语言中的strcpy、strcat、sprintf以及其对应的各类其它版本
一文搞定C语言中的strcpy、strcat、sprintf以及其对应的各类其它版本文章目录一文搞定C语言中的strcpy、strcat、sprintf以及其对应的各类其它版本前言一、先来看看有几类函数二、使用步骤1.引入库2.读入数据总结前言在编写C语言程序时,若使用了strcpy、strcat、sprintf等函数,经常编译器会提醒该函数不安全,推荐使用更为安全的版本进行替换。这些函数为什么不安全?安全的版本又是如何实现的呢?本文将探讨这些问题。一、先来看看有几类函数strcpy、str
2020-12-02 22:58:48 955 1
原创 Liunx系统下的C/C++程序编译
CMake工具详细使用教程文章目录CMake工具详细使用教程前言一、GNU Make介绍1.1GNU Make是什么?1.2为什么需要make工具?1.2.1C/C++程序的编译流程2.常用的make命令二、CMake1.引入库2.读入数据总结前言本文将主要介绍C/C++软件的编译工具?提示:以下是本篇文章正文内容,下面案例可供参考一、GNU Make介绍1.1GNU Make是什么?make是一条计算机指令,是在安装有GNU Make的计算机上的可执行指令。该指令是读入一个名为m
2020-11-16 21:59:31 393
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人