我可以将冰淇淋(icecc)配置为零本地作业吗



我正试图在一个动力不足的系统上构建一个项目(英特尔计算棒有1GB的RAM(。某些编译步骤内存不足。我已经配置了icecc,这样它就可以向功能更强大的机器发送一些作业,但似乎icecc总是在本地机器上至少执行一项作业。

我已经尝试在/etc/ICECC/ICECC.conf中设置ICECC_MAX_JOBS="0"(并重新启动iceccd(,但该文件中的注释是:

# Note: a value of "0" is actually interpreted as "1", however it
# also sets ICECC_ALLOW_REMOTE="no".

我还尝试通过运行/etc/init.d/icecc stop来禁用计算棒上的icecc守护进程。然而,icecc似乎仍然将一个作业放在本地机器上(也许如果守护进程关闭,它会将所有作业放在本机上?(。

这个项目是基于makefile的,我似乎陷入了一个瓶颈步骤,用-j>1调用make仍然只会发出一个作业,而这次编译会使系统内存过期。

我能想到的唯一解决办法是在不同的系统上进行实际编译,然后将二进制文件运回,但我希望在这个平台上进入调整/构建/评估周期,所以我希望能够直接从计算棒上工作。

如果有帮助的话,这两个系统都运行ubuntu 14.04。

我认为它不受支持,因为如果存在网络问题,icecc会在主机上进行编译。最好的解决方案是在远程机器上编译并复制回生成的二进制文件。

您是否尝试在客户端的终端(运行make的位置(中设置ICECC_TEST_REMOTEBUILD

export ICECC_TEST_REMOTEBUILD=1

在我的测试中,这总是强制所有源都进行远程编译。

请记住,链接总是在本地机器上完成的。

相关内容

  • 没有找到相关文章

最新更新