A. 动态编译和静态编译有何主要区别
静态编译与动态编译的区别
1、动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。所以其优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。缺点一是哪怕是很简单的程序,只用到了链接库中的一两条命令,也需要附带一个相对庞大的链接库;二是如果其他计算机上没有安装对应的运行库,则用动态编译的可执行文件就不能运行。
2、静态编译就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。所以其优缺点与动态编译的可执行文件正好互补。
B. Opencv怎么静态编译(VS2012下)
静态编译,需要把你的lib文件拷贝到当前目录下,然后在你的应用程序里写上如下语句
#pragma comment(lib,"opencv_core243d")这个样子。
C. 静态编译和动态编译有何不同
静态编译就是把库函数编译到你的程序里 这样编译的好处是 可以适应不同的平台 如果你是用window系统的话不建议用静态编译 因为这样会使你的代码量增大
动态编译就是不把库函数编译到你的程序里
D. vs2013如何静态编译
项目属性-配置属性-常规-MFC的使用-使用标准Windows库(不用MFC)
然后,C/C++-代码生成-运行库-多线程/MT或者多线程调试/MTd
带d的是链接调试版本,DEBUG项目选/MTd,Release项目选/MT
如果使用MFC,在MFC的使用中设置静态、动态链接,代码生成中必须使用<从上级继承>
E. vs2005 2008如何设置静态编译
静态编译?你指的是MFC静态链接吧。
在你的VC项目上单击右键,点击属性,然后看配置属性里面的常规项,在右面的MFC使用中选择“在静态库中使用MFC”就可以了。
注意,上面一栏“配置”里,Debug和Release都要改。
F. 如何设置vc2010静态编译就是可以让exe在别人的电脑上也运行的。
项目-属性-配置属性-常规 里的“MFC的使用” 改为在“静态库中使用MFC”
G. VS开发的文件编译成静态太大,用什么工具编
MFC本身就是“肥代码”(FatCode)的,
代码冗余量极大,
要想文件小,
就不要使用MFC,可以使用ATL,或者纯API。
H. VS2010 C3 wnform 如何静态编译
不行吧,你用NET FrameWork 2.0或3.0编译一下,一般现在的电脑都自带装2.0或其他de的了
I. vs2010为什么设置了静态编译还是需要dll文件才能运行exe
静态编译:就是在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖动态链接库。
编译方式:
第1种:
设置:
1、项目->配置属性->常规->MFC的使用:在静态库中使用MFC
2、项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程调试(/MTd)。
编译时,选择的是debug,win32
然后执行编译生成方案,在该工程目录下的debug文件中,找到该.exe文件,即可在其他电脑运行。
第2种:
一般可以配置一下两项:
1.项目 -> 配置属性->常规->MFC的使用 :在静态库中使用MFC。
2.项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程调试(/MT)。
编译时,选择的是release,win32(这个选择项在工具栏的debug选框中,一般我们使用debug方式)