Knowledge (XXG)

distcc

Source 📝

354: 99: 55: 181: 341:
icecream was created by SUSE based on distcc. Like distcc, icecream takes compile jobs from a build and distributes it among remote machines allowing a parallel build. But unlike distcc, icecream uses a central server that dynamically schedules the compile jobs to the fastest free server.
259:
distcc is designed to speed up compilation by taking advantage of unused processing power on other computers. A machine with distcc installed can send code to be compiled across the network to a computer which has the distccd
287:. Remote machines compile those source files without any local dependencies (such as libraries, header files or macro definitions) to object files and send them back to the originator for further compilation. 585: 333:
can also use distcc as its backend, providing distributed compiling if it is not already cached by using the CCACHE_PREFIX environment variable.
267:
distcc works as an agent for the compiler. A distcc daemon has to run on each of the participating machines. The originating machine invokes a
359: 447: 590: 595: 276: 280: 120: 78: 550: 46: 261: 244: 156: 240: 580: 216: 112: 294:) in which included header files are sent to the remote machines, so that preprocessing is also distributed. 228: 205: 425: 232: 189: 139: 54: 326: 212:. With the right configuration, distcc can dramatically reduce a project's compilation time. 314:
Goma is a similar tool made by Google to replace distcc & ccache in compiling chromium.
236: 209: 151: 127: 451: 98: 382: 132: 574: 402: 248: 180: 377: 367: 284: 268: 224: 201: 372: 349: 32: 22: 231:
as its backend, though it provides varying degrees of compatibility with the
518:
icecream: Distributed compiler with a central scheduler to share build load
495: 197: 144: 555: 330: 322: 516: 302:
distcc was an option for distributed builds in versions of Apple's
220: 116: 87: 303: 179: 560: 473: 565: 543: 167: 271:
to handle header files, preprocessing directives (such as
325:
is another tool aimed to reduce the compilation time by
306:
development suite prior to 4.3, but has been removed.
561:
DMUCS – a Distributed Multi-User Compilation System
162: 150: 138: 126: 108: 77: 45: 31: 21: 219:programming language (and its derivatives like 329:the output from the same input source files. 8: 16: 97: 53: 15: 290:distcc version 3 supports a mode (called 450:. Distcc.googlecode.com. Archived from 394: 279:to other machines over the network via 275:) and the source files and sends the 264:and a compatible compiler installed. 243:. Distributed under the terms of the 7: 474:"Distcc & Distributed Computing" 360:Free and open-source software portal 448:"distcc frequently asked questions" 14: 426:"Reduce compile time with distcc" 352: 215:It is designed to work with the 586:Free computer programming tools 566:DistCC Enterprise Load Balancer 494:V. L. Simpson (October 2004). 424:Laurence Bonney (2004-07-22). 1: 496:"Speed Compiling with Distcc" 472:Daniel Robbins (2004-02-01). 556:Comparison of related system 283:either unencrypted or using 612: 446:Martin Pool (2007-02-23). 245:GNU General Public License 196:is a tool for speeding up 157:GNU General Public License 241:Sun Studio Compiler Suite 73: 41: 272: 591:Cross-platform software 551:google distcc pump mode 596:Unix programming tools 185: 206:distributed computing 183: 60:; 3 years ago 190:software development 521:, icecc, 2017-12-27 277:preprocessed source 18: 498:. linuxgazette.net 233:Intel C++ Compiler 186: 23:Original author(s) 178: 177: 603: 547: 546: 544:Official website 529: 528: 527: 526: 513: 507: 506: 504: 503: 491: 485: 484: 482: 481: 469: 463: 462: 460: 459: 443: 437: 436: 434: 433: 421: 415: 414: 412: 410: 399: 362: 357: 356: 355: 298:Related software 274: 237:Sun Microsystems 210:computer network 174: 171: 169: 128:Operating system 101: 96: 93: 91: 89: 68: 66: 61: 57: 37:Fergus Henderson 19: 611: 610: 606: 605: 604: 602: 601: 600: 581:Compiling tools 571: 570: 542: 541: 538: 533: 532: 524: 522: 515: 514: 510: 501: 499: 493: 492: 488: 479: 477: 471: 470: 466: 457: 455: 445: 444: 440: 431: 429: 423: 422: 418: 408: 406: 401: 400: 396: 391: 358: 353: 351: 348: 339: 320: 312: 300: 257: 166: 104: 86: 69: 64: 62: 59: 12: 11: 5: 609: 607: 599: 598: 593: 588: 583: 573: 572: 569: 568: 563: 558: 553: 548: 537: 536:External links 534: 531: 530: 508: 486: 464: 438: 416: 393: 392: 390: 387: 386: 385: 383:Electric Cloud 380: 375: 370: 364: 363: 347: 344: 338: 335: 319: 316: 311: 308: 299: 296: 256: 253: 176: 175: 164: 160: 159: 154: 148: 147: 142: 136: 135: 133:Cross-platform 130: 124: 123: 110: 106: 105: 103: 102: 83: 81: 75: 74: 71: 70: 51: 49: 47:Stable release 43: 42: 39: 38: 35: 29: 28: 25: 13: 10: 9: 6: 4: 3: 2: 608: 597: 594: 592: 589: 587: 584: 582: 579: 578: 576: 567: 564: 562: 559: 557: 554: 552: 549: 545: 540: 539: 535: 520: 519: 512: 509: 497: 490: 487: 475: 468: 465: 454:on 2009-09-07 453: 449: 442: 439: 427: 420: 417: 405:. 11 May 2021 404: 403:"Release 3.4" 398: 395: 388: 384: 381: 379: 376: 374: 371: 369: 366: 365: 361: 350: 345: 343: 336: 334: 332: 328: 324: 317: 315: 309: 307: 305: 297: 295: 293: 288: 286: 282: 278: 270: 265: 263: 254: 252: 250: 249:free software 246: 242: 238: 234: 230: 227:) and to use 226: 222: 218: 213: 211: 207: 203: 199: 195: 191: 182: 173: 165: 161: 158: 155: 153: 149: 146: 143: 141: 137: 134: 131: 129: 125: 122: 118: 114: 111: 107: 100: 95: 85: 84: 82: 80: 76: 72: 58:/ 11 May 2021 56: 50: 48: 44: 40: 36: 34: 30: 26: 24: 20: 523:, retrieved 517: 511: 500:. Retrieved 489: 478:. Retrieved 467: 456:. Retrieved 452:the original 441: 430:. Retrieved 419: 407:. Retrieved 397: 378:IncrediBuild 368:Compile farm 340: 321: 313: 301: 291: 289: 269:preprocessor 266: 258: 247:, distcc is 214: 193: 187: 33:Developer(s) 476:. Dr.Dobb's 225:Objective-C 202:source code 198:compilation 65:11 May 2021 27:Martin Pool 575:Categories 525:2017-12-27 502:2011-08-25 480:2011-08-24 458:2009-10-19 432:2011-08-24 389:References 373:FlowTracer 109:Written in 79:Repository 292:pump mode 204:by using 52:3.4  346:See also 337:Icecream 145:Compiler 327:caching 208:over a 170:.github 163:Website 152:License 94:/distcc 92:/distcc 63: ( 409:21 May 331:ccache 323:ccache 318:Ccache 273:#ifdef 262:daemon 255:Design 194:distcc 184:Distcc 168:distcc 121:Python 88:github 17:distcc 428:. IBM 304:Xcode 411:2021 310:Goma 235:and 223:and 140:Type 90:.com 285:SSH 281:TCP 229:GCC 221:C++ 200:of 188:In 172:.io 117:C++ 577:: 251:. 239:' 192:, 119:, 115:, 505:. 483:. 461:. 435:. 413:. 217:C 113:C 67:)

Index

Original author(s)
Developer(s)
Stable release
Edit this on Wikidata
Repository
github.com/distcc/distcc
Edit this at Wikidata
C
C++
Python
Operating system
Cross-platform
Type
Compiler
License
GNU General Public License
distcc.github.io

software development
compilation
source code
distributed computing
computer network
C
C++
Objective-C
GCC
Intel C++ Compiler
Sun Microsystems
Sun Studio Compiler Suite

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.