動作する NSIS スクリプトがあります。コンパイルすると、生成されたインストーラーが正常に動作します。それでも、makensis.exe は 0 ではなく 1 を返します。継続的インテグレーションのセットアップでこれを使用すると、ビルドが失敗したと CI が判断するため、これは本当に苦痛です。
これは、プロジェクトを SVN から Git に切り替え、NSIS スクリプトに 1 つの小さな変更を加えたときに始まりました (パスを 2 か所変更しました)。
- 私が見つけることができるコンパイル エラーは (/V4 を使用しても) 出力されません。
- 6 つの警告がありますが、makensis が 0 を返した古いリポジトリにあった 6 と同じです。
- 以前の「errorlevel=0」出力と新しい「errorlevel=1」出力を比較しましたが、大きな違いは見つかりませんでした。
- 正常に動作するインストーラーを生成します。
- 私は今でも makensis.exe のまったく同じコピーを使用しています。
それでも、エラーレベル 1 を返します。
数年前にこの問題があったことは確かですが、どのように解決したか思い出せません。NSIS の最新バージョンにアップグレードしたばかりだと思いますが、今回はそれができません (既に最新バージョンを使用しています)。