C/C++中生成动态库和静态库的方法
来源:互联网 发布:巨灵数据库 编辑:程序博客网 时间:2024/06/08 17:52
本文只介绍如在visual studio 2008中生成动态库和静态库的方法。。
一、生成动态库(Dynamic-link library)的方法
第一步:在新建项目中,应用程序设置中,选择DLL,其他不变
然后右击你的项目文件,选择属性,然后在弹出的属性框中,设置三个地方。
1.配置属性-连接器-输出文件
把输出文件名改一下,后缀不要变,例如my.dll
2.配置属性-C/C++-代码生成
找到运行时库,改成多线程调试(/MTD)
3.配置属性-C/C++-预编译头
找到“创建使用编译头”,设置不使用编译头
这三步完成后,点击确定
在项目文件源文件中添加名为mydll.cpp的项目文件,编写代码
_declspec(dllexport) int sum(int a,int b){ return a+b;}
然后编译链接执行,右击项目文件,选择在资源管理器中打开,找到生成的my.lib和my.dll这两个文件,只需要这两个文件。
然后重新打开一个vs2008,正常的建立一个项目,不做任何设置(在生成动态库时,对vs2008设置的一些属性,在新打开的vs中不生效,会回到默认设置,一切正常建立一个项目就可以)
在新打开的vs中编写代码
#include<stdio.h>#pragma comment(lib,"my.lib")_declspec(dllimport) int sum(int a,int b);int main(){ int result = sum(3,4); printf("result:%d\n",result); return 0;}
注意,要把上一个项目中生成的my.dll和my.lib文件拿出来,放在本项目中CPP文件一个目录下。
然后编译链接执行。
二、生成静态库的方法
在创建项目时,只需要以下设置就可以了。
应用程序设置中勾选静态库,取消使用预编译头的勾选
然后把输出文件改为my.lib
编写代码
int sum(int a,int b){ return a+b;}
编译链接生成后再资源管理器中找到生成的my.lib文件。
此时打开一个新的vs,正常的创建一个项目
编写以下代码
#include<stdio.h>#pragma comment(lib,"my.lib")int sum(int a,int b);int main(){ int ret = sum(2,3); printf("ret:%d\n",ret); return 0;}
1 0
- C/C++中生成动态库和静态库的方法
- 在Linux中生成C/C++动态库和静态库的方法
- C中静态库和动态库的使用
- 动态库和静态库的生成 linux c/c++
- 动态库和静态库的生成 linux c/c++
- c语言生成静态库.a和动态库.so
- linux c/c++ 动态库和静态库的生成与使用
- linux下生成动态库和静态库的方法
- C语言中静态库和动态库
- Golang生成共享库(shared library)以及Golang生成C可调用的动态库.so和静态库.a
- Go中调用C的动态库与静态库
- C语言--动态库和静态库
- liunx C 静态库、共享库的生成和使用
- c语言静态库和动态库的编写
- Linux C静态库和动态库的制作
- 关于c/c++静态库和动态库的区别
- Linux C 静态库和动态库的使用
- C语言的动态库和静态库
- hdu2063 过山车
- Android实现事件监听的三种方式
- 吝啬的国度
- 目标的设定和坚持
- 【HDU 5739】Fantasia(点双连通+dfs)
- C/C++中生成动态库和静态库的方法
- java序列化
- 解决Hadoop和Spark本地版本库不统一的问题
- hdu 1200
- Linux值得拥有的性能监控工具
- Android 设置闹钟的解决方案
- MySQL优化之二--存储引擎
- hdu2119 Matrix
- lua 语法