2017-03-21 11 views
2

Unser xamarin.iOS Build dauert fast 5 Minuten. Hat jemand einen Einblick, warum das so schlimm ist? Wir haben eine Reihe von nativen Bibliotheken, in denen wir verlinken. Es wäre nicht so schlimm, wenn wir Builds ohne Putzen machen könnten, aber dieser Xamarin-Bug https://bugzilla.xamarin.com/show_bug.cgi?id=52165 bedeutet, dass wir nichts tun können, als saubere Builds. Danke.Extrem langsam Xamarin.iOS baut

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 

Build erfolgreich. 0 Warnung (en) 0 Error (s)

Abgelaufene Zeit 00: 05: 46,1791850

+0

die nativen Bibliotheken und Abhängigkeiten verbunden sind? – ApolloSoftware

+0

Sie sind eigentlich Drittanbieter-Bibliotheken, die wir mit einem gcc-Befehl verknüpfen. – JRosanowski

+0

Erstellen Sie die .a-Bibliotheken aus der Quelle oder kopieren Sie sie während des Erstellungsskripts vorkompiliert? Können Sie den Build dieser Bibliotheken weglassen und sie manuell während der Build-Zeit kopieren? – ApolloSoftware

Antwort

0

ein paar Dinge gibt, die Ihren Build zu beschleunigen getan werden könnte.

inkrementelle aktivieren baut & aktivieren gerätespezifische

Die Builds sind unter:

Properties -> iOS Build 

Und nur die Teile des Codes erstellen, die geändert wurde, während die Gerät- Beim spezifischen Build wird nur das ausgewählte Gerät erstellt.

Aktualisieren Sie Ihre Linker Verhalten

Wenn für ein Gerät bauen können Sie das Verhalten Linkers zu Link all oder Don't link für die Simulatoren aktualisieren. Was die inkrementellen und gerätespezifische bauen Sie unter finden:

Properties -> iOS Build