夏天/isummer

Sun of my life !Talk is cheap, Show me the code! 追风赶月莫停留,平芜尽处是春山~

博客园 首页 新随笔 联系 管理

 VS2010中如何将动态链接库改成静态链接库

  VS2010静态编译生成的.exe可执行文件,可以免安装免DLL在其他电脑直接运行。
  静态编译:就是在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖动态链接库。
1. 编译实现方式有两种
  【1】debug方式的静态链接:
  设置:
  (1)项目 -> 配置属性->常规->MFC的使用:在静态库中使用MFC(如果有使用MFC)。
  (2)项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程调试(/MTd)。
 
  编译时,选择的是debug,win32
  然后执行编译生成方案,在该工程目录下的debug文件中,找到该.exe文件,即可在其他电脑运行。
  debug方式生成的.exe文件会比较大,因为它包含了一些调试用的信息。
 
  【2】release方式,就是正式版发行版
  一般可以配置以下两项:
  (1)项目 -> 配置属性->常规->MFC的使用 :在静态库中使用MFC(如果有使用MFC)。
  (Project—Properties—Configuration Properties—General—Use of MFC—Use MFC in a Static Library)
  (2)项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程(/MT)。
  (Project—Properties—Configuration Properties—C/C++—Code Generation—Runtime Library—Multi-threaded(/MT))
 
  编译时,选择的是release(这个选择项在工具栏的debug下拉列表中),win32。
  然后执行编译生成方案,在该工程目录下的release文件中,找到该.exe文件,即可在其他电脑运行。
 

2. 可能出现的问题

(1)提示一些库缺失

  解决:则需要把相应缺失的库添加到exe当前目录

  例如:把相应的glut32.dll添加到exe当前目录即可处理

  

posted on 2015-12-30 19:08  夏天/isummer  阅读(3618)  评论(0编辑  收藏  举报