我知道这种错误已多次发布,但我从来没有找到一个明确的解决方案,谷歌也没有。
我正在使用teamcity
(以及C++
中的编程),当我运行时,我收到以下消息错误:
Compilation error: c-interface\build-VS2012\ZERO_CHECK.vcxproj
id=12106;type=TC_COMPILATION_ERROR;identity=c-interface\build-VS_1_1568984478;
additionalData=compileBlockId='64'
Open in IDE C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon.targets(172, 5): error MSB6006: "cmd.exe" exited with code 3.
本地编译中的相同代码正确编码,因此不是由于代码,我不知道它是否与teamcity
配置相关或在远程构建代理机器或许可权限。
我手动编写了一个版本,并且我没有在本地编译。使用高详细程度发现错误来自:
D:\ PortFolioCalculator \ BuildAgent \ work \ 7f2ffd93194f947d \ c-interface \ build-VS2012 \ Win32 \ Debug \ ZERO_CHECK \ custombuild.command.1.tlog
我们内心有: setlocal" C:\ Program Files(x86)\ CMake 2.8 \ bin \ cmake.exe" -HC:/ tortoise6 / c-interface -BC:/ tortoise6 / c-interface / build-VS2012 --check-stamp-list CMakeFiles / generate.stamp.list --vs-solution-file" d:\ PortFolioCalculator \ BuildAgent \工作\ 7f2ffd93194f947d \ C接口\集结VS2012 \ rain.sln"
- >没有cmake 2.8文件夹,也没有c:\ tortoise6文件夹。
我的问题是在存储库中执行代码检查,没有Win32文件夹,这个文件夹是在msbuild.2期间创建的:
如何更改它以便不拥有仅适用于Visual Studio的文件夹?
您是否认为在编译过程中告诉Teamcity将此问题静音是个好主意?
有什么建议吗?
谢谢
答案 0 :(得分:1)
失去了很多天后,我找到了解决方案。 cmake一直在运行。对于在teamcity中运行的每个构建,我们必须执行一个cmake,因此必须执行两个步骤: 1-我在运行cmake \ bin \ cmake.exe -D__TEAM_CITY = 1的项目的teamcity文件夹(它必须存在且已经正确填充)中。 cmake.exe是包含在项目中的二进制文件(或者在构建计算机中安装它)。 2-然后:MSbuild TeamCity / file.sln
构建已在teamcity中正确执行