在某些情况下,是否有任何令人信服的性能原因选择静态链接而不是动态链接?我已经听过或读过以下内容,但我对这个问题的了解不足以保证它的真实性.
1)静态链接和动态链接之间的运行时性能差异通常可以忽略不计.
2)(1)如果使用使用配置文件数据优化程序热路径的配置文件编译器,则不成立,因为使用静态链接,编译器可以优化代码和库代码.通过动态链接,您的代码可以进行优化.如果大部分时间都花在运行库代码上,那么这可能会产生很大的不同.否则,(1)仍然适用.
我有嵌入式bitcode术语的问题.
什么是嵌入式bitcode?
什么时候启用,ENABLE_BITCODE
在新的Xcode?在Xcode 7中
启用时,二进制文件会发生什么ENABLE_BITCODE
?
我有一个现有的iOS应用程序,并希望添加一大块代码,我一直在开发另一个项目,以方便测试.新的块基本上处理将图像保存到各种共享服务等.因为共享代码需要大量的测试和未来的更新,我想知道将代码块合并到我现有的应用程序中的最佳方法是什么.
我不知道它应该是静态库,动态库还是框架,老实说,我不确定区别是什么,或者我应该如何去做它并在Xcode中设置它.
我所知道的是,我需要/想要为共享代码保留单独的测试和更新应用程序,并让主应用程序使用它.
如果你还不能说,我不是一个git wiz.我只是一个简单的单人开发人员.
任何帮助或方向将不胜感激.谢谢!
我不得不承认,随着iOS 8的发布,我对iOS中的动态和静态框架感到有些困惑.
我正在寻找一种方法来分发我创建的库,我需要支持iOS 7及更高版本.(注意:这将是一个专有框架.我不能使用可可豆荚,我也不能分发来源).这是我已经知道的:
以下是关于此信息的问题:
frameworks static-libraries static-linking ios ios-frameworks
当我尝试在Xcode 6.3中构建CKCountdownButton作为框架时,它会抱怨
警告:找不到目标'CKCountdownButton'的伞头,将不会生成模块图
然后,当我在其他项目中导入此框架时,它失败了没有这样的模块'CKCountdownButton'
我有遗留代码依赖于指针,32-bit
并希望xCodeBuild
用来构建代码command line
.由于某种原因,这不起作用.这是我使用的命令:
xcodebuild -configuration Debug -arch i386
-workspace MyProject.xcworkspace -scheme MyLib
Run Code Online (Sandbox Code Playgroud)
这是我得到的输出
[BEROR]No architectures to compile for
(ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=i386).
Run Code Online (Sandbox Code Playgroud)
显然,它试图建立x86_64
的代码,并惨遭失败,因为我只启用i386
从VALID_ARCHS
Xcode中的项目设置.
有没有办法让它理解我不想要一个64-bit
图书馆?
瓷砖基本上都说明了一切.
我正在开发一个具有正常应用目标的mac应用程序,但还有两个命令行工具目标,其产品在构建时被复制到应用程序.我记得在某些地方看到"跳过安装"在这些情况下很重要,但我记得我读过的东西都没有,所以这可能是不正确的.
无论如何,我只是想知道这个选项会有什么影响.
我有一个Swift SpriteKit项目,包含大约25个小文件.编译这个项目的时间是30-45秒!它是纯粹的Swift,没有ObjC.
我在Report Navigator中观察了编译,试图找到一个花时间的文件.但是,它不是一个单独的文件.它始终是列表中的最后一个文件,似乎总是占用.但是这个文件在编译之间可能会有所不同,但仍然需要花费很多时间.
在最后一个文件之后的步骤是Merge xxx.swiftmodule,这很快就会发生,但是我不确定是否因为它在它可能相关的缓慢之后出现.
我搜索并尝试了各种方法来找到罪魁祸首.我看了这篇文章:为什么Swift编译时间这么慢?并尝试了这些方法.我使用CTRL-来完成了命令行构建,但是没有显示有关缓慢的任何有用信息.
我已经完成了我的项目,寻找类型推断可能会被绊倒的地方,但是没有找到太多(实际上,如果是这种情况,我希望单个文件成为罪魁祸首).
有没有人有任何其他建议来追踪这个?来自几乎立即编译的Objective-C项目,这让我发疯.
编辑我对此进行了更多的工作,包括构建输出的屏幕截图,注意到缓慢发生的位置.问题是,如果我在缓慢的文件中注释掉的代码,那么该文件之前,在列表中就变成了一个缓慢的(它被罚款之前).如果我将该代码注释掉,那么那之前的代码就会变慢,等等.
我已经用谷歌搜索了这个问题,以清除一些基本概念,但是没有找到合适的答案。
Swift编译器和Apple LLVM(Objective-C)的Xcode构建设置中有多少优化级别可用于代码生成?
我在Mac上构建了一个演示iOS应用程序.我的客户想要获取可执行文件并在他的Mac上的iOS模拟器上运行它以便给我反馈.我有一个Apple开发者帐户,我可以将我的应用程序部署到我的iPad/iPhone或通过AppStore分发.但我不知道如何为他生成iOS模拟器可执行文件.他只想要iOS模拟器可执行文件.有没有人曾经尝试过这个?
PS我不能通过AppStore真正分发它,因为它只是一个演示应用程序.它很可能被拒绝.另外,我今天必须把它寄给他,所以我不认为Apple可以在一天内通过我的应用程序.
PPS我不能给他源代码,除非他付钱给我.但一个月后就不可能了.
请帮忙.提前致谢!
ios ×7
xcode ×5
frameworks ×2
swift ×2
xcode4 ×2
bitcode ×1
build ×1
c ×1
c++ ×1
command-line ×1
compilation ×1
iphone ×1
llvm ×1
macos ×1
objective-c ×1
optimization ×1
performance ×1
provisioning ×1
xcode4.2 ×1
xcode7 ×1
xcodebuild ×1