当我在 VS2013 中使用 C++ 运行时库的静态链接时,有什么方法可以降低构建大小吗?
我的原始文件只有 15kb,但我无法在其他计算机上运行它而不弹出缺少 .dll 的消息。我决定使用静态链接,现在大小约为 100kb。
我正在使用Windows.h
标头和 WinAPI 函数。
如果您只想显示 MessageBox,则不需要链接到any静态库。
#include <windows.h>
void entry(void) {
MessageBox(NULL, "Hello, World!", "", MB_OK);
ExitProcess(0);
}
使用VC++2013编译链接,命令行如下:
cl /O1 /GS- hello32.c /link /nodefaultlib /entry:entry /subsystem:windows user32.lib kernel32.lib
至少对我来说(使用 VC++ 2013)它生成了 2560 字节的可执行文件(仅依赖于核心 Windows DLL,因此即使在最简陋的系统上运行它也不需要任何额外的东西)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)