1 库的概念? 库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库。 2 动态库与静态库的概念? 先回顾一下编译过程: 2.1 静态库 静态库在链接阶段,会将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中,对应的链接方式称为静态链接。试想一下,静态库与汇编 ...
分类:
编程语言 时间:
2017-07-10 14:22:11
阅读次数:
244
VS2017也推出很久了,在单位的时候写linux的服务端程序只能用vim,这让用惯了IDE的我很难受。 加上想自己撸一套linux上的轮子,决定用VS开工远程编写调试linux程序。 在windows下编写静态库并在另一个项目中引用很简单 新建项目的时候选择静态库,进去把代码撸好,即可编译出静态库 ...
分类:
系统相关 时间:
2017-07-08 10:17:26
阅读次数:
261
现在我有hello1.cpp和hello2.cpp两个文件,现在我要生成动态链接库libhello.so和静态链接库libhello.a。以下为步骤: 1.生成动态链接库: g++ -m32 hello1.cpp hello2.cpp -fPIC -shared -o ../lib/linux32/ ...
分类:
其他好文 时间:
2017-07-07 21:36:00
阅读次数:
155
静态链接器以一组可重定位目标文件和命令行参数作为输入,生成一个完全链接的可以加载和运行的可执行目标文件作为输出。为了构造可执行文件,链接器必须完成两个主要任务: 1、符号解析:目标文件定义和引用符号,符号解析将每个符号引用刚好和一个符号定义联系起来 2、重定位:编译器和汇编器生成从地址0开始的代码和 ...
分类:
其他好文 时间:
2017-07-07 15:30:08
阅读次数:
133
http://www.cnblogs.com/qiaoconglovelife/p/5870000.html 加载(load) 将程序拷贝到存储器并运行的过程,由加载器(loader)执行。 链接分类 编译时(compile time)链接:也称为传统静态链接、静态链接; 加载时(load time ...
分类:
其他好文 时间:
2017-06-21 13:58:56
阅读次数:
155
(0)文件夹 VMware 下安装Ubuntu的吐血经历 零基础学习Shell编程 Linux下的makefile的妙用 Linux调试神器 -- gdb 十分钟学会Python的基本类型 Linux 静态链接库和动态连接库 一:静态链接库的应用 三步走~~~ ##g++ -c StaticMath ...
分类:
系统相关 时间:
2017-06-18 12:04:55
阅读次数:
318
博文说明【前言】:本文将通过个人口吻介绍Linux中静态链接库和动态链接库相关知识,在目前时间点【2017年6月14号】下,所掌握的技术水平有限,可能会存在不少知识理解不够深入或全面,望大家指出问题共同交流,在后续工作及学习中如发现本文内容与实际情况有所偏差,将会完善..
分类:
系统相关 时间:
2017-06-15 00:45:59
阅读次数:
293
计算机系统概述 首先,通过介绍C语言程序的具体实例,来说明高级语言程序的执行结果与编程语言之外的计算机系统其他方面有关,从而使学生明白为何要学习“计算机系统基础”课程;然后,介绍计算机系统基本组成与基本功能、程序开发和执行过程、计算机系统层次结构等概述性内容;最后,简要说明本课程的主要学习内容。 数 ...
分类:
其他好文 时间:
2017-06-09 10:09:59
阅读次数:
611
1.实例代码 2.程序已经为目标文件的时候,需要和运行时文件链接,什么是运行时文件 gcc *.o -v 查看链接的整个过程/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-lin ...
分类:
其他好文 时间:
2017-06-04 18:39:19
阅读次数:
200
第一章 C语言基础 1. C语言编译过程 预处理:宏替换、条件编译、头文件包含、特殊符号 编译、优化:翻译并优化成等价的中间代码表示或汇编代码 汇编:生成目标文件,及与源程序等效的目标的机器语言代码,至少由代码段和数据段组成 链接:将有关的目标文件彼此相连接,分为静态链接和动态链接 2. 编码规范 ...
分类:
编程语言 时间:
2017-06-03 18:15:42
阅读次数:
196