我正在尝试构建c ++项目。
当我在终端中运行make命令时,它工作, 但是当我通过Jenkins这样做时,它会向我显示文件丢失的消息。
可能是什么问题,我该如何解决?
错误:
+ make
make -f enclave_lib.mk SGX_DEBUG=1
make[1]: Entering directory '/home/yoni/Documents/private_ledger-tp/CryptoLib'
mt19937ar.c:44:19: fatal error: stdio.h: No such file or directory
答案 0 :(得分:1)
从您的评论中,问题是Jenkins是以root用户身份执行的,无法找到lib stdio.h。
要解决此问题,您可以选择以下几种方法:
以root用户身份安装build-essential。那应该安装这个缺少的依赖
答案 1 :(得分:1)
事实证明,在我们的案例中,这是环境变量的问题。
我要解决的是
任何与终端环境和Jenkins没有放入/ etc / environment文件相关的变量(Jenkins从那里获取额外的环境变量)
env |排序> envInTerminal.txt
env |排序> envInJenkins.txt
meld envInTerminal.txt envInJenkins.txt
sudo gedit / etc / environment