AppVeyorによるビルド
本家版になるべく近いビルド環境を作りたいので nvdajp を AppVeyor でビルドしてみる。 オープンソース用の無料プランで登録。 何も考えずにプロジェクトをつくって実行するとエラーになる。 設定ファイルをすこしずつ直していくつもり。
2回目でビルド成功したが libopenjtalk.dll の組み込みになぜか失敗している。
#36180 の続き。 コンパイルが止まっている場所にやっと気がついた:
https://ci.appveyor.com/project/TakuyaNishimoto/nvdajp/build/jpbeta-8
cd libopenjtalk cd text2mecab nmake /f Makefile.mak Microsoft (R) Program Maintenance Utility Version 14.00.23506.0 Copyright (C) Microsoft Corporation. All rights reserved. cl /O2 /Ob2 /Oi /Ot /Oy /GT /GL /TC /D CHARSET_SHIFT_JIS /c text2mecab.c Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23506 for x86 Copyright (C) Microsoft Corporation. All rights reserved. text2mecab.c c:\projects\nvdajp\miscdepsjp\include\python-jtalk\libopenjtalk\text2mecab\text2mecab_rule_shift_jis.h(226): error C2001: newline in constant NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\cl.EXE"' : return code '0x2' Stop. NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\nmake.EXE"' : return code '0x2' Stop.
text2mecab_rule_shift_jis.h(226) を見たら Shift JIS で半角カタカナ「ソ」が入っていた。
どうやら日本語環境でコンパイルする必要があったらしい:
http://qiita.com/kento1218@github/items/0978237aae1534caefd9
チケット #36180 対応として本件の作業を実施しました。
最新ビルド AppVeyor という項目を Web サイトに追加。
更新用サーバーへのアップロードも自動的に行えるので、 すこしずつ設定するつもり。
git のコメントで
[skip ci]と書けばビルドをスキップするという仕様の説明: https://www.appveyor.com/docs/how-to/skip-build
AppVeyorのビルドが動かなくなった。 Windows のロケールを切り替える処理で止まっているのでサポートに質問中。
http://help.appveyor.com/discussions/problems/4619-job-stopping-for-60-minutes
worker image を Previous Visual Studio 2015 に切り替えてみたが効果なさそう。
本家がビルドシステムをAppVeyorに移行:
https://github.com/nvaccess/nvda/issues/5499
https://www.appveyor.com/