在Masm32中如何静态链接自己编写的库文件

简介: 在Masm32中如何静态链接自己编写的库文件

动态链接很简单,直接包含***.inc,***.lib,则程序运行时,会自动加载***.dll;或者LoadLibrary

但是,如何静态链接自己编写的库文件呢?

因为,特别是对于小程序,编写时,把部分相对独立的功能用lib或者dll来完成,有些模块化的方式,但是最后链接为exe时,希望仅仅一个单独的exe,而不是还得带几个dll。

参考masm32.inc和masm32.lib呀;它的连接就是静态的

实现方法很简单,方式如下:

 链接库文件时,不要用link  /dll /def:***.def  ***.obj,而是用link -lib***.obj,这样,产生的***.lib文件就包括了库文件的代码。在exe工程中,就直接include ***.inc,includelib***.lib,编译链接时,就自动把指定***.lib的代码链接到exe文件中了。

 注意:这种方式下,库文件的函数名不能和exe工程文件中的函数名重复,因为其实相当于一个工程内,而dll方式下,则无此限制


相关文章
|
存储 Cloud Native Linux
C++ 动态库与静态库的区别?
C++ 动态库与静态库的区别?
|
存储 Linux 编译器
什么是链接库 | 动态库与静态库
什么是链接库 | 动态库与静态库
159 0
|
IDE 编译器 开发工具
[笔记]vs2015 编写汇编masm32之使用MASM32库
[笔记]vs2015 编写汇编masm32之使用MASM32库
|
安全 Linux 编译器
【Linux编译器gcc/g++】带你了解代码是如何变成可执行程序的!
【Linux编译器gcc/g++】带你了解代码是如何变成可执行程序的!
|
Linux
MSVC编译多个C程序文件
MSVC编译多个C程序文件
158 0
|
Linux
Linux环境封装静态库成动态库
Linux环境封装静态库成动态库
192 0
|
Linux vr&ar C语言
Linux环境编译静态库
Linux环境编译静态库
145 0
|
NoSQL Linux C++
Linux环境编译动态库
Linux环境编译动态库
129 0
|
Linux 开发工具 C++
Linux编译多个不同目录下的文件以及静态库、动态库的使用
先看两篇博文,作为基础知识。如果对C/C++编译链接过程都了解的话,可以跳过不看。 http://www.firedragonpzy.com.cn/index.php/archives/2556 http://www.
1851 0
|
编译器 C++ 开发者
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
1010 0
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结