首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Xcode -分析和优化C++编译时间

Xcode -分析和优化C++编译时间
EN

Stack Overflow用户
提问于 2016-10-17 20:34:11
回答 2查看 1.1K关注 0票数 1

如何使用Xcode分析和优化C++编译时间?

我目前正在做一个基于250+源文件的Cocos2d-x的C++游戏项目。编译时间(没有Cocos2d-x)目前大约是3.5分钟,我想找出编译器花费时间最多的地方,以及我可以做些什么来优化这一点。

我已经做了最明显的事情,比如总是做向前声明,并应用“包含您使用的内容”范例。

该编译器是Xcode8最新的Clang/LLVM。

EN

回答 2

Stack Overflow用户

发布于 2016-10-19 19:27:04

尝试创建目录/tmp/xcode_build_timings,然后重新构建您的项目。(别忘了之后把它删除)。

票数 4
EN

Stack Overflow用户

发布于 2016-10-17 21:00:37

您可以随时尝试ccache。如果我在项目设置中重新定义了CC,那么我可以在Xcode中很好地工作。https://ccache.samba.org/

因此,例如,通过brew install ccache安装ccache。然后创建一个脚本,保存在项目的源代码控制中,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/bin/sh
if type -p /usr/local/bin/ccache >/dev/null 2>&1; then
  export CCACHE_CPP2=true
  exec /usr/local/bin/ccache "${DEVELOPER_DIR}/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" "$@"
else
  exec "${DEVELOPER_DIR}/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" "$@"
fi

例如,将其称为"ccache-clang“。将此脚本存储在项目的源代码管理中意味着您可以在没有安装ccache的另一台计算机上签出它,然后它将只使用默认的Clang编译器。

然后在Xcode中,在项目的Build Settings下,添加一个"User Defined“设置"CC",并将其设置为您的脚本的路径。例如,"${PROJECT_DIR}/ccache-clang“。

这篇文章是一个很好的资源,可以帮助你实现这个目标。https://pspdfkit.com/blog/2015/ccache-for-fun-and-profit/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40095189

复制
相关文章
swift 增加 Xcode 编译速度 减少 Xcode 编译时间 日常注意事项
swift 是编译型语言,所以编译时间相比较 OC 是要增加不少时间的 swift 在 编译的时候花费做多的时间就是,类型推断 关于影响编译速度和统计编译时间的文章在度娘上比比皆是
onety码生
2018/11/21
9140
iOS 编译时间优化
使用BuildTimeAnalyzer-for-Xcode查看每个编译单元的耗时。
莫空9081
2021/02/27
2.3K0
Xcode编译疾如风系列-1.分析编译耗时
开发 iOS 的小伙伴都知道,随着项目的不断庞大,Xcode 项目的编译时间也会越来越长。如果不加管控,会严重影响到我们的开发效率。
ChildhoodAndy
2021/04/23
5.1K0
Injection for Xcode 高效Xcode编译调试插件
对于iOS开发者来说,XCode有个另人十分难耐的特性——编译时长的问题。也许工作的时候你能够为自己找到一个闲下来喝杯咖啡的正当的借口,然而,多次的调试编译过程足以让你喝上好多杯咖啡了。应该说,Injection是iOS开发者的福音,它在很大程度上优化了XCode的性能,提升了开发者的工作效率。
freesan44
2018/09/05
1.9K0
Injection for Xcode 高效Xcode编译调试插件
Xcode编译遇到bitcode问题
最近使用第三方库的时候,经常会遇到在Xcode7下编译报错的问题,错误大都有一个关键字:bitcode。例如:
Cloudox
2021/11/23
1.8K0
Xcode编译遇到bitcode问题
地球时间和 C++ 时间库
GMT 是一个 时区,也指一种 时制。很久以前,科学家通过天文观察,将一个太阳日定义为 86400 秒,以英国 Greenwich 天文台白天平均太阳最高点作为正午 12:00,这样一个相对长度 + 一个绝对时刻,就定义了一套绝对时间体系,也就是 GMT 体系,同时 Greenwich 所在的时区也作为 GMT+0 时区。自1924年2月5日开始,Greenwich 天文台负责每隔一小时向全世界发放调时信息。再后来又从 GMT 升级到了 UT1,本质不变,还是基于天体测量。
JIFF
2019/09/10
3.4K0
地球时间和 C++ 时间库
Xcode编译疾如风-3.浅谈 dwarf 和 dSYM
小菜:本文是《Xcode编译疾如风-4.BuildSettings》的其中的Debug Information Format 配置项的背景知识前置科普文。
ChildhoodAndy
2021/05/11
4.4K0
加载RAM磁盘编译Xcode项目
每次对Xcode iOS项目进行clean、build或者在iOS虚拟机上launch,Xcode都会在DeriveData文件夹中进行读写操作。换句话说,就是将Derived Data的读写从硬盘移动到内存中。 DeriveData文件夹中包含了所有的build信息、debug- 和 release- built targets以及项目的索引。当遇到零散索引(odd index)问题(代码块补全工作不正常、经常性的重建索引、或者运行项目缓慢)时,它可以有效地删除衍生数据。删除这个文件夹将会导致所有Xcode上的项目信息遭到破坏。
freesan44
2018/09/05
1.6K0
前端打包、编译和优化
目前前端世界主流的前 3 名模块打包器仍然是 Webpack 、 Rollup 和 Esbuild 。
码之有理
2023/03/06
2.2K0
Linux C++编译和链接
Linux系统中最常用的编译器是g++,这是来自Free Software Foundation的GUN C++编译器。Linux的多数版本都包含该编译器,但并不一定总会安装它。g++编译器的工作方式很像标准UNIX编译器。例如,下面的命令将生成可执行文件a.out
狼啸风云
2022/06/06
2.4K0
Xcode编译疾如风系列-2.并行编译
Xcode 编译是一个需要 CPU 运算以及大量 IO 操作的过程。我们将编译任务分配给多个 CPU 来提高单位时间内的编译速度。
ChildhoodAndy
2021/04/23
3.1K0
C++服务编译耗时优化原理及实践
大型C++工程项目,都会面临编译耗时较长的问题。不管是开发调试迭代、准入测试,亦或是持续集成阶段,编译行为无处不在,降低编译时间对提高研发效率来说具有非常重要意义。
美团技术团队
2020/12/14
2K0
C++服务编译耗时优化原理及实践
Xcode14编译失败修改
这个的解决方案,直接Google,第一个stackoverflow的链接是Xcode 14 needs selected Development Team for Pod Bundles,这里面给出的解决方法是,在Podfile里增加下面代码,然后运行Pod install,设置Pod库的DEVELOPMENT_TEAM是开发者账号的team。
莫空9081
2022/09/14
4.8K0
Xcode 9.3 升级后编译报错
是因为Carthage当前的Framework是用Swift4.0.3编译的,只需要update一下Carthage的三方库就好,命令如下: carthage update --platform iOS 希望能帮到大家!
韦弦zhy
2018/09/11
1K0
通过Xcode命令行编译
命令行工具包是一个小型独立包,可供下载独立于Xcode的和允许您执行命令行开发OS X,它由两部分组成:OS X SDK和命令行工具,如Clang的,这是安装在/ usr/ bin中
君赏
2018/08/31
6.2K0
通过Xcode命令行编译
使用 TVMC 编译和优化模型
内容一览:本节讲解使用 TVMC 编译和优化模型。TVMC 是 TVM 的命令驱动程序,通过命令行执行 TVM 功能。本节是了解 TVM 工作原理的基础。
HyperAI超神经
2023/02/27
7690
使用 TVMC 编译和优化模型
swift-5.5.1-RELEASE源码编译(Xcode)
对于源码的版本要与Xcode的swift版本一致,对于macOS的版本参照一下CI说明文档[1] 提供两个宝藏网站以帮你查询你的Xcode与swift的version信息: Xcode Releases[2] Swift Version[3]
Swift社区
2022/12/12
1.5K0
swift-5.5.1-RELEASE源码编译(Xcode)
Xcode编译TXLiteAVSDK报错解决方法
在Xcode上运行腾讯云Demo或者开发者自己的项目,编译过程中有时会报错。最常见的是两种:
腾讯视频云-Zachary
2019/09/06
5.9K0
Xcode编译TXLiteAVSDK报错解决方法
编译优化
1 #pragma comment(linker, "/stack:200000000") 2 #pragma GCC optimize("Ofast,no-stack-protector") 3 #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") 4 #pragma GCC optimize("unroll-loops")
风骨散人Chiam
2020/10/29
6030
深入理解JIT和编译优化
小师妹已经学完JVM的简单部分了,接下来要进入的是JVM中比较晦涩难懂的概念,这些概念是那么的枯燥乏味,甚至还有点惹人讨厌,但是要想深入理解JVM,这些概念是必须的,我将会尽量尝试用简单的例子来解释它们,但一定会有人看不懂,没关系,这个系列本不是给所有人看的。
程序那些事
2020/07/07
7500

相似问题

分析和优化编译

21

如何对Objc/C++项目编译时间进行分析/优化?

13

C++性能分析和优化

30

Xcode目标优化编译

20

分析编译时间

80
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文