2012-09-10 2 views
2

Jenkins Windows 배치 플러그인에서 IAR 프로젝트를 빌드하는 데 문제가 있습니다. 그러나 동일한 명령은 명령 프롬프트에 내장 된 동일한 시스템에서 직접 완벽하게 작동합니다.Jenkins에서 IAR을 만들 수 없습니다.

빌드 명령 : "C : \ 프로그램 파일 \ IAR 시스템 \ 임베디드 워크 벤치 6.4 \ 공통 \ 빈 \의 iarbuild"보호 \ iar_project \ cpup_project.ewp - 빌드 디버그 -log 모든

젠킨스에서 다음을 구축 오류가 발생합니다

치명적인 오류 [c0000142] : 제어되지 않은 종료

오류 C를 실행하는 동안/C++ 컴파일러

똑같은 버전 인 동일한 빌드가 Jenkins에서도 이전에 작동했습니다. Jenkins에 대한 추가 업그레이드는 없었습니다.

체제 : Windows XP

젠킨스 버전 : 1.466.1

사람이이로 인해 발생 알고 있나요?

어떻게 수정할 수 있습니까?

답변

0

문제가 해결되었습니다.

같은 시스템에 위키가있는 추가 웹 서버가 있습니다.이 서비스 (Apache)를 중단했을 때 IAR 빌드가 다시 작동했습니다!

Jenkins의 Windows 배치 명령과 Apache 웹 서버 간의 충돌이 무엇인지 모릅니다. Jenkins와 웹 서버는 완전히 다른 포트에서 실행됩니다.

1

xp 컴퓨터의 jenkins에서 iarbulid를 실행하는 것과 비슷한 문제가있었습니다. iarbuild가 동일한 오류 메시지와 함께 실패하는 것을 목격했습니다.

용어 c0000142 (예 : CreateProcess succeeds, but GetExitCodeProcess returns C0000142)에 대한 검색을 기반으로하고 procmon을 사용한 자체 관찰 결과 user32.dll을 참조하는 iccarm과 관련이 있다고 생각합니다. 서비스에서 문제가 될 수있는 것처럼 보입니다. 그러나 문제는 jenkins 서비스를 사용자로 로그온하여 변경하는 것으로 나타납니다.

흥미롭게도 변경 전 iccarm은 때때로 실패하고 때로는 성공합니다. 내 빌드는 라이브러리 의존성을 생성하기 위해 iarbuild에 대한 몇 가지 호출로 구성되었으며, 그 다음에는 애플리케이션을 빌드하라는 호출이 이어졌습니다. 라이브러리 빌드는 항상 성공하지만 최종 응용 프로그램 빌드는 일반적으로 위의 오류와 함께 실패합니다. 나는 그 차이의 바닥에 이르지 않았다.

관련 문제