问题标签 [distcc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
449 浏览

makefile - 使用distcc时如何检查哪些组件是由哪个服务器编译的

我在两台服务器上运行了一个 distccd 守护进程。一个(称为 A,.12)用作主机,而另一个(称为 B,.11)用作从机:

然后我用以下方法构建一些东西:

它告诉我:

但是,花费的时间几乎相同。我不确定是否有办法检查哪些组件是由哪个主机编译的。

我打开显示器:

我在两台机器上都试过了,都只显示空行。

我查看了/var/look/messages,但没有任何与 distcc 相关的内容。

我检查了日志文件,该文件也是空的。

如何查看我的文件是如何编译的?

#

于是我在两台机器上用top查看,结果发现所有文件都是在master本地(A)编译的。不过,我不确定为什么没有任何错误。

我还尝试从 ~/.distcc/hosts 中删除 'localhost',但结果仍然相同。

0 投票
1 回答
999 浏览

c++ - 在 distcc 中禁用某些警告

我正在使用普通的 distcc(无泵模式)来编译我的代码,并且对于分发到主机的每个文件,都会打印以下消息:

无论如何我可以禁用此警告吗?我没有“忘记”在泵下运行,因为我的代码包含 boost 标头,它无论如何都无法在我的主机上进行预处理。

0 投票
2 回答
1810 浏览

windows - 在 windows 上使用 cygwin、distcc 和 cmake 进行交叉编译

我希望我的 Jenkins 安装(在 Windows 上)利用具有 distcc 的从机来减少编译时间。

我在从属设备上使用 Cygwin 来运行 distcc,但在配置过程中遇到问题,即"./configure"。配置会进行编译器检查,但由于我使用 CMake 为嵌入式设备进行交叉编译以生成构建文件,因此我假设我不需要将所有这些信息指定给 distcc。

我尝试使用以下方法明确设置它:

导出 CC=path/to/compiler

但是,这会导致错误:

我相信 --build 配置正确,因为我将通过 Cygwin 运行 distcc,但其他变量的值尚不清楚。

有人用这种设置成功过吗?我缺少任何其他设置或有任何提示/提示资源?似乎没有如何在 Windows 机器上进行配置。

0 投票
2 回答
1420 浏览

networking - Distcc .distcc/zeroconf/hosts 不包含任何主机

我从 distcc 收到一个错误。我正在使用来自 repos 的包。这是我的配置

当我运行一堆编译(我生成了 1000 个 C 文件)时,

我得到错误,

0 投票
1 回答
174 浏览

c++ - 分布式构建冰淇淋失败资源暂时不可用

我们正在使用 icecream github:分布式构建(如 distcc)在多台机器之间编译我们的 c++ 代码。

但是,我们经常会遇到异常:

在尝试将作业传递给所有机器失败后,本地机器被迫自行编译该作业。

有没有人尝试过 icc 并且知道如何解决这个问题(可能在源代码中)?

谢谢,

0 投票
4 回答
37752 浏览

gcc - CMAKE_C_COMPILER 不是现有编译器工具的完整路径

我最近探索了 distcc 并且无法使其工作。所以我

之后,我收到错误

我已经做好了

但仍然得到同样的错误。

我该如何解决这个错误?我尝试重置符号链接并删除导出

0 投票
2 回答
2290 浏览

c++ - 如何使用 clang 和 distcc 在不同架构的 slave 上编译(例如 Mac/Linux)

我想使用 distcc 将代码从我的 Mac 编译到一堆 Linux 主机,但我不知道如何让所有东西都“对齐”。我已经成功地使用了从 Mac 到 Mac 的 distcc,所以我对如何设置有一个大致的了解。

我正在使用 Clang 4.0 并在 Mac 和 Linux 上安装并运行它。以下命令在没有distcc开头的情况下编译良好,但在添加 distcc 后,我得到以下问题:

我不确定 Linux 上使用的是什么编译器,也不知道如何找出答案。它可能会选择 GCC 而不是 Clang。

我首先担心的是:

我的第一个错误是:

我得到的下一个错误(如果我手动添加-fblocks到编译命令(在本机 Mac 版本上不需要)将成为第一个错误)是:

我不明白我是在做一些根本错误的事情,还是我遗漏了一些小东西,这使得 Linux 编译器的行为有所不同。

我只是确保在 Linux 上的 Clang 在同一个命名目录中,现在只得到-fblocksunused during compilation -stdlib=libc++问题。

我可以编译所有内容(尽管有警告),但是当它链接时,我得到:

0 投票
1 回答
96 浏览

distcc - 在一个服务器上分发编译,该服务器本身分布在更多计算机上

如果我在唯一的服务器上 distcc 我的编译,该服务器是否也可以通过使用 distcc 将其编译分发到更多计算机?

另一种问法:distcc 分发是在一次分发后停止还是递归?

如果它是递归的,它是否能顺利处理循环?(计算机 A 分布在计算机 B 上,而计算机 B 分布在计算机 A 上。)

我正在发现 distcc,我想知道是否可以设计一个编译子网络,该编译子网络只能通过堡垒访问,而无需对该子网络中的计算机有任何了解。

0 投票
0 回答
92 浏览

c - Malloc 仅适用于 valgrind。如何调试?

在这里给你一些背景,我用 valgrind 测试的项目是distcc的略微修改版本。失败的功能没有改变。代码中有问题的确切位置是 compress.c 中的函数 dcc_compress_file_lzo1x。它是这样的:

这里的问题是 if 语句中的 malloc。如果我正常运行这个程序,它会随机失败(我将整个东西包装在调试打印中),我的意思是程序在执行 malloc 时崩溃,而不会产生错误打印。另一方面,如果我用 valgrind 启动程序,一切都会过去,而 valgrind 不会产生任何有用的东西。

我不是在寻找简单的答案。我只想知道如何调试它,因为我没有想法。

0 投票
1 回答
1124 浏览

c++ - 提高 ccache 命中率

我正在使用 distcc 和 ccache 来加速我的项目的编译。

我注意到当我从不同的目录构建相同的代码时,我没有得到任何点击。我在网上查了https://github.com/ccache/ccache/issues/212发现我需要设置hash_dir flag = false. 我已经有了变量CCACHE_NOHASHDIR=true。我错过了什么吗?我需要设置/取消设置任何其他变量吗?