关于distcc安装和使用

2023-11-06

distcc: a fast, free distributed C/C++ compiler

NEWS: distcc 3.1 released!

Distcc release 3.1 is now available at Downloads. See NEWS for details.

Overview

distcc is a program to distribute builds of C, C++, Objective C or Objective C++ code across several machines on a network. distcc should always generate the same results as a local build, is simple to install and use, and is usually much faster than a local compile.

distcc does not require all machines to share a filesystem, have synchronized clocks, or to have the same libraries or header files installed. They can even have different processors or operating systems, if cross-compilers are installed.

"Just wanted to drop you a line to say that we are now using distcc at work and it is excellent. We have a rack of opteron machines that we use for computational tasks and we are now using them as a compile farm to compile our ~1MLOC C++ tree (which can take an hour on a single CPU to recompile if we change certain header files). We tried using Sun's grid engine to do this (we already use it to schedule our computational jobs), but the combination of its polled operation and the overhead of NFS led to little improvement (and greatly stressed our network). With distcc compile times are way down and my productivity has greatly improved; the two best features for me are its low impact on the network and its simplicity.
"Thanks a lot for a great tool!" — Jeremy Barnes

60-second instructions

  1. For each machine, download distcc, unpack, and do
    ./configure && make && sudo make install
  2. On each of the servers, run distccd --daemon, with --allow options to restrict access.
  3. Put the names of the servers in your environment:
    export DISTCC_POTENTIAL_HOSTS='localhost red green blue'
  4. Build!
    cd ~/work/myproject; pump make -j8 CC=distcc

Full documentation

See our documentation pages.

You may also be interested in an explanation of common pump-mode errors.

distcc 3

The major improvement in distcc 3 is the inclusion of "pump" mode. In "pump" mode, distcc sends source file with their included header files to the compilation servers, which now carry out both preprocessing and compilation. As a result, distcc-pump can distribute files up to 10 times faster to compilation servers than distcc.

distcc-pump is easily deployed through a wrapper script around an existing build command, such as 'make'. Pump mode uses the system header files from the compilation servers, so it works best if all of your compilation servers are configured identically, or if you use cross-compilers 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于distcc安装和使用 的相关文章

  • mysql分别获取已有数据date中的年月日

    感谢原问题回答者的分享 https zhidao baidu com question 217376525 html mysql数据库 test表中有一字段Date 类型为date 已有数据 如何分别获取其中的年 月 日 不是获得当前日期哦
  • ArcGIS小技术 —— 修改字段顺序的三种方法

    修改字段顺序的四种方法 数据字段如下 方法一 合并 方法二 追加 方法三 删除并按顺序重新创建字段 数据字段如下 方法一 合并 使用合并工具调整字段顺序 方法二 追加 1 创建一个新的数据 并且按照想要的顺序添加好字段 2 使用 追加 工具
  • 采用face_recognition进行人脸识别时,解决摄像头太远人脸太小导致无法检测的问题

    经测试发现 把图像resise放大后再进行人脸识别 可以识别出非常小的人脸区域 以上相片站在10米开外 分辨率300万的笔记本电脑上都可以识别 不过处理速度非常的慢 很卡 不知道换1080TI或者以上显卡能否提高效率 本来离摄像头不到1米的
  • 用ESP学习单片机之Arduino_Esp-32s获取2.8‘‘TFT LCD屏幕的触摸数据_ILI9341_SPI_XPT2046

    简介 点亮该屏幕的笔记 既然都能显示了 肯定要获取触摸位置啊 从实物图中可知该屏幕的触摸IC为XPT2046 Arduino IDE需配置esp32开发环境 开发板 ESP 32 触摸过程 这里实现的是触摸屏幕获取坐标 IO映射 TFT L
  • 医学知识-CT的窗宽窗位

    CT的窗技术 窗技术是CT检查中用以观察不同密度的正常组织或病变的一种显示技术 包括窗宽 window width 和窗位 window level 由于各种组织结构或病变具有不同的CT值 因此欲显示某一组织结构细节时 应选择适合观察该组织
  • 为什么软件开发很难?真相了

    为什么软件开发很难 真相了 作者 Jeremy Mikkol 本文认为这种困难与编程语言无关 因为现代的编程语言已经足够好了 那么 原因到底是什么 有一种观点认为 使用更好的编程语言就会让软件开发变得更容易 更高效 在汇编或 Fortran
  • vue ajax异步提交文件,vue中用ajax上传文件

    直接上代码 uploadCompany function event this file event target files let formdata new FormData formdata append file this file
  • 深度学习中常用的Adam算法

    一 Adam算法 Adam Adaptive momentum 是一种自适应动量的随机优化方法 A method for stochastic optimization 经常作为深度学习中的优化器算法 二 算法详细步骤 引用 三 Adam优
  • Java开发的模板引擎--freemarker

    模板引擎 freemarker 一 基础知识 1 1 模版引擎 1 2 关于freemarker 1 3 常用的java模版引擎 1 4 快速入门 1 4 1 指定了SpringBoot的版本 1 4 2 指定了pom xml文件依赖 1
  • dataframe将某列的空值填充为12

    工作中遇到某列数据中空值需要替换为12 df 支付周期 fillna 12 inplace True
  • 配置描述文件mobileconfig的生成

    为什么80 的码农都做不了架构师 gt gt gt 使用总结 http huodong kuaiyong com kymobile trust mobileconfig 可以把这个文件下载下来之后 借用一下 http app shouyou
  • CUDA矩阵乘法的优化

    本文以 深入浅出谈cuda 中矩阵乘法优化的部分为主线 体会cuda的并行执行过程 文章目录 1 实验环境 2 实验过程 2 1 初始版本 2 2 第一次改良 提高精度 2 3 第二次改良 使用共享内存 2 4 第三次改良 使用cudaMa
  • 四十七.快速排序C语言实现

    include
  • vim命令模式操作

    问题 以下所有操作都在命令模式进行 把 etc passwd文件 拷贝到 opt命名为nsd txt 对 opt nsd txt进行如下操作 切换到最后一行 切换到第一行 删除第二行 复制第一行到最后一行 查找root字符串 方案 本题主要
  • QRadioButton 选中/取消选中

    QRadioButton 选中的方法比较简单 ui gt radioButton gt setChecked true 取消选中怎么办 如果单纯使用 ui gt radioButton gt setChecked false 你会发现 然并
  • 写一个个人认为比较详细的adaboost算法

    最近在看机器学习中adaboost adaptive boostint 算法部分的内容 在csdn上面查找一番发现 好像没有讲的特别的详尽的 当然可能是我人品不佳 所以没有找到 为了防止同样的事情发生在其他人的身上 所以就写了这篇博文 尽量
  • 城堡争霸服务器维护,城堡争霸 - 阵营守护神(国际服)无法连接服务器是什么原因...

    城堡争霸 阵营守护神 国际服 无法连接服务器是什么原因 相信大家在玩城堡争霸 阵营守护神 国际服 的过程中 经常会遇到这样的问题 下面ourplay小编就简单为大家介绍几种常见的解决方案 城堡争霸 阵营守护神 国际服 游戏简介 城堡争霸 阵
  • Mac安装zmap

    安装 zmap官网地址 https github com zmap zmap brew install zmap 然后就可以试一下调用 zmap h 如果无法提示zmap 导入路径即可 echo export PATH PATH usr l

随机推荐

  • MATLAB中深度学习的多级神经网络构建

    创建一个简单的有向无环图 DAG 网络用于深度学习 训练网络对数字图像进行分类 layers imageInputLayer 28 28 1 Name input convolution2dLayer 5 16 Padding same N
  • python 数据全部显示,去掉中间省略号的终极办法

    data describe T 因为有省略号所以不能显示全 试了很多方法都不好用 包括 import numpy as np np set printoptions threshold np inf import pandas as pd
  • 推荐几个可以写到简历上的Go方向优质开源项目(需花点心思研究)

    前言 哈喽 大家好 我是asong 最近总有读者问我有没有Go语言方向优质的开源项目 可以写在简历上那种 一时还真想不起来 花了两天时间调研了一下 针对有无工作经验的分别推荐几个开源项目 下面我们一起来看一下 无工作经验 对于还在上学的朋友
  • java中怎么从一个数组中截取一定长度的元素放到新数组中

    可以直接用Arrays的静态方法copyOfRange int original int from int to 下面是一个简单的演示程序 1 2 3 4 5 6 7 8 9 10
  • mysql Navicat12约束条件的设置和详解

    文章目录 一 什么是mysql约束条件 1 1 说明 1 2 约束的分类 二 Navicat对应约束的设置位置 2 1 not null 非空约束 primary key 主建约束 default 默认约束 2 2 unique 唯一 2
  • OpenBSD 加速 下载安装

    OpenBSD 安装后需要安装其它软件时候 发现它要自动下载源文件 要不就手动下载 反正就是慢 我发现有个方法可以加快自动安装时候的下载 su root cat gt gt etc mk conf DISTDIR usr files dis
  • 字符串一次编辑

    一次编辑 字符串有三种编辑操作 插入一个字符 删除一个字符或者替换一个字符 给定两个字符串 编写一个函数判定它们是否只需要一次 或者零次 编辑 作者 LeetCode Solution 链接 https leetcode cn proble
  • linux搭建ftp

    ftp一些概念了解 Linux安装vsftpd及配置详解 1 安装 yum y install vsftpd 2 FTP主动模式与FTP被动模式 3 防火墙开启21端口 文中是使用iptables开启的 现在centos7 2版本默认是防火
  • 对el-form-item中的子组件进行必填验证(方法)

    效果图 思路 在el form item中添加show message属性 每次修改子组件值时 对其进行判断修改 部分代码
  • 光通量,光强,亮度,照度

    1 光通量 F 单位时间通过的光量 单位 流明 lm 2 发光强度 光强 I 单位立体角的光通量 I F 单位 坎德拉 cd 3 亮度 L 单位面积光强 L I S sin 单位 坎德拉 平米 cd 4 照度 E 单位面积接受的光通量 E
  • 固定分区存储空间的分配和回收Java代码实现

    目录 一 实验要求 二 实验目的 三 源代码 四 实验结果 五 实验总结 一 实验要求 实现固定分区存储管理方式下存储空间的分配和回收 已知当前内存分配表如下 分区号 起始地址 长度 状态 1 10KB 30KB Job5 2 40KB 7
  • 已知一个整数,如何判断这个整数是无符号的?

    前言 记录6月11日 肯哥在群里面分享的一个问题 说实话 看到题目想了半天没明白 一看答案 才发现 这题真的简单 题目 已知一个整数 如何判断这个整数是无符号的 题解 1 因为我的思路完全是错误的 我就不再此进行乱分析了 肯哥给出的提示是
  • 多维时序

    多维时序 MATLAB实现基于贝叶斯线性回归 Bayesian Regression 的多变量输入回归预测 目录 多维时序 MATLAB实现基于贝叶斯线性回归 Bayesian Regression 的多变量输入回归预测 预测效果 基本介绍
  • harbor 中 使用 push 上传镜像时候 显示 没有认证

    harbor 中 使用 upload 上传镜像时候 显示 没有认证 概述 VMware harbor 安装完成后 使用docker tag 打新的标签 然后 用docker push上传镜像的时候 显示 安全方面的错误 1 客户端显示信息
  • 数据结构知识点总结

    说明 1 本文档为作者考研准备数据结构时期所作笔记 所用资料为王道视频 2 文中少部分内容来源 王道数据结构笔记 3 文中部分图片 文字内容来源于互联网 4 文中一些示例图片由作者绘制 出现错误难以避免 如发现错误 欢迎指出 5 根据网友的
  • 在VREP的模型脚本中使用其他脚本的函数

    VREP是一款用于机器人仿真的软件 最近博主也正在使用此款软件完成机器人工控课程设计 VREP使用的是Lua语言编程的 Lua语言是嵌入式语言 十分方便简单 有C C 语言基础很容易上手 此次工控设计是关于youbot小车在迷宫中寻找随机生
  • 共识算法比较:Tendermint的BFT与EOS的dPoS

    这项技术深入研究由Chjango Unchained编写 本文比较了不同的共识系统 它们为EOS和Tendermint提供了关于每种基础技术以及它们有什么样的独特地类似证明 PoS 能力 在由单个组织运行的传统分布式系统中 信任和安全由防火
  • Windows下安装使用SVN

    Windows下安装使用SVN https www cnblogs com sns007 p 5769393 html
  • Git 学习(二)—— 工作区 — 本地仓库的操作命令

    我们要上传文件到本地仓库 不是直接拷贝进去的 而是需要通过命令一步步上传 从工作区到本地仓库分为了三步 也可以说是三个区域 目录 1 操作命令 1 git init 获取本地仓库 2 git add 工作区 暂存区 3 git commit
  • 关于distcc安装和使用

    distcc a fast free distributed C C compiler NEWS distcc 3 1 released Distcc release 3 1 is now available at Downloads Se