0

私はJNIアプリケーションを構築していますndk-build(AndroidNDKr5bとcygwinmake3.81を使用)。ビルドは通常は機能しますが、次の場合に失敗することがあります。

...
Compile++ thumb  : components <= Component.cpp
make: *** [/c/.hudson/jobs/Nightly/workspace/application/obj/local/armeabi/objs/components/Component.o] Error 126
make: Leaving directory `/c/.hudson/jobs/Nightly/workspace/application/obj/local/armeabi/objs/components'

その他のエラーはありません。Make thanはステータス2で終了します。毎回異なるファイルで発生します(上記の名前は匿名化されています)。並列ビルドでより頻繁に発生するようですが、非並列ビルドでも発生する場合があります。

誰かがそれが何であるか、または少なくともそれをデバッグする方法についての考えを持っていますか?

4

3 に答える 3

3

Makeエラー126はpermission deniedです。ウイルス対策ソフトウェアを実行していますか?もしそうなら、おそらくそれはファイルをロックしているか、書き込みを妨げているので、エラーを引き起こしていますか?ウイルス対策ソフトウェアをオンにしていない場合は、ファイルロックを取得している可能性のある別のソフトウェアを使用している可能性がありますか?

于 2011-03-16T14:52:10.817 に答える
1

これ(およびその姉妹エラー、makeエラー127)がビルドで発生しないようにする唯一の方法は、makeの同時ジョブの最大数を1に設定することです。

これを行うには、コマンドラインパラメータ「-j1」を指定してmakeを実行します。例:

make -j 1 CONFIG=debug
于 2011-11-15T09:43:08.537 に答える
0

これが私に起こったとき、私は通常、エラーに関連するオブジェクトファイル(あなたの場合はComponent.oとComponent.od)を削除してから再構築します。

于 2011-06-21T23:40:19.140 に答える