2017-03-21 50 views
2

我们的xamarin.iOS构建需要将近5分钟。有人有任何洞察,为什么这是如此糟糕?我们有一些本地库,我们链接进去。 如果我们可以在没有清理的情况下进行构建,这种情况并不会那么糟糕,但是这个Xamarin bug https://bugzilla.xamarin.com/show_bug.cgi?id=52165意味着我们除了干净构建之外什么都做不了。 谢谢。极其缓慢的Xamarin.iOS构建

Tasks perfomance summary: 
    0.165 ms AssignCulture           1 calls 
    4.000 ms AssignProjectConfiguration        4 calls 
    16.440 ms AssignTargetPath          18 calls 
24836.932 ms Codesign            1 calls 
    7561.935 ms CodesignVerify           1 calls 
    30.837 ms CollectBundleResources         2 calls 
    0.487 ms CollectFrameworks          1 calls 
    15.252 ms CollectITunesArtwork         1 calls 
    18.556 ms CompileAppManifest          1 calls 
    25.155 ms CompileEntitlements          1 calls 
    27.335 ms CompileITunesMetadata         1 calls 
    15.406 ms ComputeBundleResourceOutputPaths      1 calls 
    737.619 ms Copy             8 calls 
    0.689 ms CreateAssetPackManifest         1 calls 
    0.925 ms CreateDebugConfiguration        1 calls 
    12.812 ms CreateDebugSettings          1 calls 
    87.254 ms CreateItem           108 calls 
    0.839 ms CreatePkgInfo           1 calls 
    0.193 ms CreateProperty           1 calls 
    2997.449 ms Csc              1 calls 
    1.307 ms Delete             4 calls 
    0.669 ms DetectDebugNetworkConfiguration       1 calls 
    2.607 ms DetectSdkLocations          1 calls 
    138.342 ms DetectSigningIdentity         1 calls 
24605.093 ms DSymUtil            1 calls 
    30.904 ms EmbedMobileProvision         1 calls 
    1.635 ms FindAppConfigFile          1 calls 
    1.453 ms FindItemWithLogicalName         1 calls 
    7.779 ms FindUnderPath           1 calls 
    1.678 ms GetNativeExecutableName         1 calls 
    0.589 ms GetReferenceAssemblyPaths        1 calls 
    1.546 ms MakeDir             2 calls 
    0.622 ms Message             2 calls 
    1359.395 ms MSBuild             5 calls 
272271.284 ms MTouch             1 calls 
    3888.247 ms OptimizeImage           1 calls 
    157.087 ms OptimizePropertyList         5 calls 
    0.598 ms ParseExtraMtouchArgs         1 calls 
    0.319 ms ReadLinesFromFile          1 calls 
    0.989 ms RemoveDir            3 calls 
    46.349 ms RemoveDuplicates          1 calls 
    81.335 ms ResolveAssemblyReference        1 calls 
    121.745 ms SmartCopy            1 calls 
    6812.551 ms SpotlightIndexer          1 calls 
    1.953 ms Touch             2 calls 
    180.862 ms UnpackLibraryResources         1 calls 
    2.020 ms ValidateAppBundleTask         1 calls 
    1.478 ms WriteItemsToFile          2 calls 
    4.712 ms WriteLinesToFile          2 calls 

构建成功。 0警告(S) 0错误(S)

已用时间00:05:46.1791850

+0

哪些本机库和依赖项被链接? – ApolloSoftware

+0

它们实际上是第三方.a库,我们使用gcc命令链接。 – JRosanowski

+0

您是从源代码构建.a库,还是在构建脚本期间预编译它们?你可以省略这些库的构建,并在构建期间手动复制它们吗? – ApolloSoftware

回答

0

有两件事情可以做,以加快您的构建。

启用增量构建&启用设备专用构建

这些都是下:

Properties -> iOS Build 

将建只有已更改代码的部分,而装置 - 具体构建将只构建选定的设备。

更新您的链接器行为

当构建你可以更新链接器行为来Link allDon't link的仿真设备。 至于增量和特定于设备的版本,您可以在下面找到它:

Properties -> iOS Build