如何在Docker Hub中从源代码构建Emacs? BSS和堆之间的差距

时间:2016-05-31 11:26:04

标签: emacs docker dockerhub

直到最近,我才能够使用this recipe在docker容器中从源代码构建emacs。但是截至上周,我的所有构建都失败了

Warning: Your system has a gap between BSS and the
heap (32188607 bytes).  This usually means that exec-shield
or something similar is in effect.  The dump may
fail because of this.  See the section about
exec-shield in etc/PROBLEMS for more information.

我读过etc/PROBLEMS这对我没有任何意义。有没有人知道如何解释这个Docker容器以及我可以做些什么来在hub.docker.com上重新构建emacs?

我试过

cat 0 > /proc/sys/kernel/exec-shield

但我不认为这确实是问题,它在容器中不存在。

1 个答案:

答案 0 :(得分:3)

由于你是crosspost,我是crossanswer:P恕我直言交叉错误,你应该删除其中一个问题。

这个问题也在这里得到解答(因为你已经找到了我的github bug报告):

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23529

目前,在emacs构建系统发生变化之前,可能会出现这种情况,唯一有效的解决方案是:

  • 不要使用Dockerfile构建并构建一个运行容器,该容器具有允许个性系统调用的seccomp配置文件。例如:

    docker run --rm -it --security-opt seccomp=unconfined emacs-builder-image

  • 在构建之前禁用/ proc / sys / kernel / randomize_va_space:

    echo 0 > /proc/sys/kernel/randomize_va_space; docker build .

我在https://hub.docker.com/r/silex/emacs

维护泊坞窗图片