同时运行两个构建时出错

时间:2013-12-05 14:38:08

标签: linux makefile cmake clearcase-ucm

有人知道为什么在运行两个版本时出现问题 同一时间在同一个构建服务器上?

我有以下错误:

cp: cannot create regular file
`/tmp/tmpdir_ap/ck/up/config/launcher.11': Permission denied
PKG ERROR [package-prebuild.c/genfiles()] : Error 0 on system
(cp -d /vobs/tito/fdd/app/files/m2/launcher.11
/tmp/tmpdir_ap/ck/up/config/launcher.11)

在另一个版本中,我有以下错误。

make[3]: Leaving directory
`/vobs/...............'
Failure in communication with signing server...........
failure getting the chain key file, aborting.
---
Unexpected error!

1 个答案:

答案 0 :(得分:2)

如果两个版本同时需要对资源进行独占访问,那么并行运行的两个版本将会遇到麻烦。在大型项目中,可能不会立即明显两个构建需要访问相同的资源,因为它可能是使用另一个第三方库等的第三方库的Makefile。

例如,此错误消息:

`/tmp/tmpdir_ap/ck/up/config/launcher.11': Permission denied

建议构建使用/tmp/中的临时目录,但不会生成其名称以防止冲突。因此,如果您有两个人在运行使用该临时目录的构建,那么您将遇到问题。

我不知道是什么原因导致您的网络错误,但如果是独占访问的问题(例如,如果构建过程在固定端口上启动服务器),则可以解释构建失败的原因。

这种冲突的解决方案是通过构建过程来确保创建临时目录以具有唯一名称,可以动态分配端口以避免冲突等。