詹金斯找不到g ++

时间:2019-04-13 05:46:35

标签: jenkins g++ centos7 devtoolset

我正在学习所有这些新技术。我有一个用于私人开发的家用服务器,带有最新版本的centos 7.6(最小安装)。我正在尝试使服务器尽可能轻巧。

我已经安装了jenkins(v2.164.2),并且可以正常运行。我创建了一个新的Freestyle项目,以编译托管在另一个自己的Gogs服务器上的g ++项目。我已经定义了gogs url和凭据,然后在execute shell命令中添加了以下内容:

which g++; make clean; make;

当我按下“立即构建”按钮时,它失败并显示以下消息:

  

其中:(/ sbin:/ usr / sbin:/ bin:/ usr / bin)中没有g ++

克隆存储库等似乎工作正常。

我没有安装默认的g ++版本,而是安装了devtools-7(g ++ v7.3.1)随附的版本。我在/etc/profile.d/devtools.sh下创建了一个新文件,其内容如下:

!#/bin/bash
source scl_source enable devtoolset-7

如果我登录到服务器中的bash shell,然后运行哪个g ++,我将获得预期的输出。

最后,问题是:为什么詹金斯没有接受?据我所知,将该文件添加到/etc/profile.d下可确保每个人都可以访问g ++。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我已设法在最后修复它。我留下问题,以防其他人遇到相同的问题。我只需要在“执行外壳”命令字段中将以下行添加为第一行:

#!/bin/bash -l
make clean; make;

那个#!/ bin / bash -l <​​/ em>达到了目的。 (请注意-l)。

在这里找到它:What shell does Jenkins use?