在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方式下,则无此限制


相关文章
|
9月前
|
机器学习/深度学习 人工智能 算法
程序员必知:VS2017动态链接库(.dll)的生成与使用
程序员必知:VS2017动态链接库(.dll)的生成与使用
132 3
|
Linux API C语言
编译参数中如何包含头文件和动态链接库
GCC编译参数:如何包含头文件和动态链接库
83 0
|
Linux 编译器 Shell
【Linux系统编程】静态库和共享库
【Linux系统编程】静态库和共享库
184 0
|
Linux
MSVC编译多个C程序文件
MSVC编译多个C程序文件
181 0
|
Linux C语言 C++
Linux环境编译单个C程序文件
Linux环境编译单个C程序文件
293 0
|
Ubuntu 编译器 Linux
Linux环境编译多个C程序文件
Linux环境编译多个C程序文件
567 0
|
IDE Java 开发工具
JNI学习(2)——生成动态链接.dll文件
JNI学习(2)——生成动态链接.dll文件
199 0
JNI学习(2)——生成动态链接.dll文件
|
编译器 C语言 C++
将c语言文件打包成exe可执行程序
如何将编写的c语言程序打包成exe可执行文件呢? 以前我们写程序很多是在编辑器上,让编辑起来编译运行我们的程序。如果想将其打包成exe可执行文件该如何做? 我这里推荐使用codeBlocks的gcc命令,因为比较简单。像vs这种编辑器就像是一把屠龙刀。功能过于复杂,需要注意的很多。 如何适用codeBlock的gcc命令呢? 我们来认识gcc命令是什么?gcc包括c和c++编译器
997 0
将c语言文件打包成exe可执行程序
|
编译器 C++ 开发者
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
1115 0
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
|
C语言
一文解决C程序的编译问题
对于C源码编译,大部分人都停留在./configure --prefix=XXX && make && make install这一步,大部分的程序都能顺利走完这一步,然后被安装到指定的文件下,小部分的程序会因为xxx不全而出错,然后你把这个问题放到搜索引擎上,就会找到一篇博客说用sudo apt-get/yum install xxx 后可以解决问题,然后问题解决了。
970 0

热门文章

最新文章