2

我们有一个 Code Composer Studio (Eclipse) 项目,它使用 CMAKE 生成生成文件并进行构建。当项目手动导入到 Jenkins 从站 (Win10 x64) 并从命令行执行时,项目按预期编译,但在由 Jenkins 处理构建时失败。失败总是遵循相同的模式:从目标文件的路径中删除一个单数字母。例如,因为找不到引用的目标文件,[Repo directory]/Cockpit_Scaling_and_Exceedance_data.dir成为和链接失败。[Repo direcory]/Cockpit_Scaling_and_Exceedance_ata.dir

我确保帐户环境变量和系统环境变量之间没有区别,并且还配置了 Jenkins 服务以在从站上使用管理员帐户而不是 SYSTEM,以消除 Jenkins 和命令之间的许多差异线尽可能。

该项目将使用我们的其他 Jenkins 从站之一(也是 Win10 x64)成功构建,因此我们知道这不是 Windows 10 问题或我们的 Jenkins 配置问题。由于我找不到两台从机的配置之间的任何差异,我希望有人能够建议在某个地方寻找这个路径问题。

4

1 回答 1

1

我从来没有发现为什么目标文件的路径被破坏了,但我确实让项目通过 Jenkins 在从站上成功构建。我所做的只是将我所有的系统环境变量更改为用户环境变量。我复制粘贴,所以我知道变量本身没有改变。

我不知道为什么这更正了这个问题,因为我whoami在构建开始时插入了一个调用以确认 Jenkins 确实作为用户而不是系统运行。我想从这一点上我所有的环境变量都将特定于用户而不是系统......

编辑:问题又回来了。我在追查此问题背后的原因方面没有取得进一步进展,但我发现在 bash 环境而不是 Windows 命令提示符下运行脚本时,我没有看到此症状。对我来说幸运的是,这些脚本都是以可以在两种环境中运行的方式编写的,所以我让我的同事使用 bash 代替它们。

于 2016-04-26T20:05:03.423 回答