Visiual Studio之c++项目瘦身(删除中间项)

欢迎指正

本文主要涉及 Visiual Studio(简称VS) 创建的c++项目 和 windows下批处理相关点。

1、中间项

A、VS创建的c++项目,生成后,会有许多中间项,包括项目生成的中间项 和 解决方案的中间项, 下次打开解决方案,显示的是上一次关闭的位置,VS则是通过配置实现的。 这些中间项可以删除。

B、我们需要的是代码正确和编译结果。 中间怎么生成的,其实,实际中,咱们没有关心过。可以配置VS,禁止生成某些不用的中间项。

C、还记得很清楚,刚开始使用VS的时候,c++的项目体积大,一个解决方案下的项目拷贝要花很长时间,就是中间项的存在,比如以下面这些格式存在的文件:

*.vc.db
*.tlog
*.log
*.idb
*.pdb
*.lastbuildstate
*.ilk
*.exp
*.obj
*.iobj
*.ipch
*.tlh
*.obj.enc
*.tli
*.exp

这些中间项有的是关于解决方案配置的,有的是生成的中间项,有的是调试文件,这些文件体积大,而且,当项目重新编译时,可能会重新生成。

2、瘦身

使用批处理来瘦身,这也是我参加工作后,向大佬学到的(他的一个项目,若不瘦身,体积1G+)。我自己实际中用到的如下:

A、创建批处理文件.bat。

B、纳入下面的代码(按需增删):


del /s .vc.db

del /s
.tlog

del /s .log

del /s
.idb

del /s .pdb

del /s
.lastbuildstate

del /s .ilk

del /s
.exp

del /s .obj

del /s
.iobj

del /s .ipch

del /s
.tlh

del /s .obj.enc

del /s
.tli

del /s .exp

del /s
.pch

pause

C、上面的代码,是递归删除, 因为 /s 参数的存在。 也就是说,当前目录下及当前目录子目录下的文件均会被删除,没有提示。

D、若不想看删除结果,可以去掉pause命令

E、上面的代码仅仅为删除文件,新版本VS创建的C++项目会有.vS文件夹,可以增加下面的代码删除,注意:删除文件夹需要指定具体的文件夹路径

rd /s /q %cd%cmake_pipebuild.vs
rd /s /q %cd%vs_pipe.vs

代码中,删除了cmake_pipeBuild目录和vs_pipe目录下的.vs文件夹。

3、一个例子

比如,目录结构:

Visiual Studio之c++项目瘦身(删除中间项)

【light_file.bat】 则是我创建好的瘦身批处理文件,内容和上面的一样。 双击执行:

Visiual Studio之c++项目瘦身(删除中间项)

这样,体积就很苗条了。

原文链接: https://www.cnblogs.com/pandamohist/p/13601191.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/202213

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月12日 下午9:06
下一篇 2023年2月12日 下午9:06

相关推荐