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


 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当前目录即可处理

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM