2

Jenkins Windows バッチ プラグインから IAR プロジェクトをビルドする際に問題が発生しています。ただし、同じコマンドは、コマンド プロンプトに組み込まれた同じマシンから直接、完全に正常に機能します。

ビルド コマンド:「C:\Program Files\IAR Systems\Embedded Workbench 6.4\common\bin\iarbuild」protective\iar_project\cpup_project.ewp -build Debug -log all

Jenkins からビルドすると、次のエラーが発生します。

致命的なエラー[c0000142]: 制御不能な終了

C/C++ コンパイラ実行中のエラー

同じビルド、つまりまったく同じバージョンが、以前は Jenkins からも機能していました。Jenkins に対する追加のアップグレードは行われていません。

システム: Windows XP

ジェンキンスのバージョン: 1.466.1

これが何によって引き起こされているか知っている人はいますか?

どうすれば修正できますか?

4

2 に答える 2

1

XPマシンでjenkinsからiarbulidを実行すると、同様の問題が発生しました。iarbuild が同じエラー メッセージで失敗することを確認しました。

c0000142 という用語の検索に基づいて (例: CreateProcess は成功しますが、 GetExitCodeProcess は C0000142 を返します)、および procmon に関する私自身の観察に基づいて、おそらく不必要に、iccarm が user32.dll を参照していることに関係していると思います。サービス。ただし、jenkins サービスをユーザーとしてログオンするように変更すると、問題は解決するようです。

興味深いことに、その変更の前は、iccarm は失敗することもあれば成功することもありました。私のビルドは、ライブラリの依存関係を生成するための iarbuild へのいくつかの呼び出しと、それに続くアプリケーションをビルドするための呼び出しで構成されていました。ライブラリのビルドは常に成功しますが、最終的なアプリケーションのビルドは通常、上記のエラーで失敗します。しかし、私はその違いの底に達していません。

于 2013-04-05T03:36:42.760 に答える
0

問題が解決しました。

同じマシンで追加の Web サーバーを Wiki で実行しています。このサービス (Apache) を停止すると、IAR ビルドが再び機能しました。

Jenkins の Windows バッチ コマンドと Apache Web サーバーの間で何が競合する可能性があるのか​​ 本当にわかりません。Jenkins と Web サーバーは、まったく異なるポートで実行されます。

于 2012-09-10T08:53:10.290 に答える