KiCAD winbuild

PCのOSがWindows11になりました。なのでと言う訳でもないのですがbuildシステムがpowershellのshell scriptベースとなったので、改めて挑戦。

説明ページ(https://gitlab.com/kicad/packaging/kicad-win-builder)によればgitを入れとけばOKとのことだったので、一式をgitリポジトリから持ってきて実行開始。

いきなり「powershellではスクリプト実行できません」攻撃を喰らい撃沈。セキュリティ上の仕様によりスクリプトは実行できない状態にしてあるとかなんとか。いきなり丸腰ってもどうかと思ったので制限付き実行可状態として再度挑戦。

あれやこれやをダウンロードしているようで順調です。が、「cmakeが無い」と苦情。こんなことも有ろうかと思ってcmakeを最新版を入れてPathも通しておいたのですがダメ。よくエラーメッセージを見るとパス決め打ちでそこにcmakeが無いと。しかもバージョンまで決め打ちされているのでcmakeのアーカイブから当該バージョンを引っ張ってきて、再挑戦。

が、結果的には最後のあたりでエラーになって結局は自前buildには失敗です。

本家ではどうやってパッケージを作成してんでしょうね。毎度のことながら謎だ。

KiCAD V6その4

どうにか時間が取れたので、本体のbuild開始。30分くらいで終わった気がします。

今回、VSでProjectを開くのにドキュメントと違う方法試したところドはまり。cmakesettings.jsonにswig.exeとpython.exeのありかを書いておけば、特に何も追加指定せずに実行できるはずと、あれこれやりましたがエラーが取れなくて一旦中止。cmakesettings.jsonの書式を勉強しないとだめですね…

今度はドキュメント通りにprojectを開き、ドキュメントにある通りにswig.exeとpython.exeの在処を書き込んでビルド開始。ビルドオプションは生成するオブジェクト毎に分かれています。x86-debug,x86-release,x64-debug,x64-release,MSYS2-x64-debugとあるのですが、x86とMSYS2は使用しないのでx86の2つにだけ追加。

出来上がったのはよいのだけど、何このバージョン表記。またnightlyからソースを引っ張ってきてしまったようだ… 進歩無いな。もう一度6.01のソースをとってくるところからやり直さなきゃ。

KiCAD V6その3

いろいろ情報を漁っていたところ、文字コードをUTF8にするオプションが有ることを発見。コントールパネルの「時計と地域」→「地域」→(管理タブ)と辿っていくとUnicode対応というチェックがあります。ベータと書いてあるのが気になりますが、デフォルトで用意されているのだからと、チェックを入れて再起動。再度vcpkgの作成に挑戦します。

文字コード変更

その結果は大成功で、止まることなく進行していきます。嬉しいことにネイティブ環境なので、当たり前ですがVM環境下より早い。途中でlibiconvだったかがエラーになっていたのだけど、全体として停止せずに進んでいるので必要無いってことなんだろうか? これは後でどう影響するか気になります。まぁ実行する前にもう一度構築してみますかね。

さてVM環境下ではかなりの時間を要したvcpkgの構築、どの程度で終わるのか楽しみだ。

16:55追記

外出から戻ってきたら終わってました。所要時間は2.8hとのことですから2時間50分ほど。VMの時は7時間以上だったので大幅短縮です。buildもこの調子だと嬉しいな。

2月13日追記

vcpkgが更新されていたので、gitで取り直して更新。途中sqlite3の処理でエラーになったけど、再度実行したら止まることなく実行中。なんだったかな?

KiCAD V6その2

メインフィールドであるFedoraにRawideではありますが、正式に6.0が来たのでソースをチェック。いつもの所にお馴染みのnewstroke_font.cppを発見。ならばと早速ファイルを入れ替えてrebuild。結果は予想通りで、全部の文字を確認したわけではありませんが、ざっと見た範囲では幅の問題が解決しています。

と言うことは、Windows側でもまだRebuildはやる価値ありということで、再びがさごそ。
しかしMsys利用のWinbuilderは対応が5.12で止まっています。PKGBUILDの中身をいじれば良いのでしょうが、正規に提供していないということは何か問題があるんだろうと思わせます。

ならば丁度よいと思い英語環境のユーザーを追加してVisual Studio利用での作成に挑戦。
しかし、vcpkgの処理中にwxPythonの文字コード問題が発生してエラー停止。CP1251でも結果は一緒です。
普通に日本語環境で試した時と同じ結果で、使用言語を英語にしただけではベースの文字コードが変わらないので問題は解決しない模様なんだけど、全体の文字コードベースをUTF8にする方法が有るらしいので、いったんそちらを試してみますか。

それにしてもこのsh●tなパッケージを使い続けている理由が分からないなぁ。ベースのpythonでもV2からV3への移行で大問題が発生しているので個人的には関わりたくない言語です。とは言え人気が有り、高校の情報の授業でのプログラミングの題材として利用されていのをよく見かけますので、とっつきやすいんでしょうかね。

と言うわけで、またMSから英語版Windows11の開発環境イメージを落としてきてそちらの環境で試してみましょう。

KiCad V6

年末ぎりぎりのタイミングでVer.6が公開されました。私のメインフィールドであるFedoraはRawhideが6.0rc1で、本提供は5.12で止まっていますので、Windows版でテスト。

噂通り、そのままの状態で日本語が表示されます。なんとなくカナ部と漢字部の幅の割当が間違っている気がしないでも無いのですが、例の大騒ぎをしなくても良いのは助かります。まだソースは見ていないのですが、newstoke_fontを入れ替えれば解決するのかな?

Fedora側の-o3処理祭りがようやく7割方終わったところなので、片付いたら試してみますか。
その前に現在SSDをつなぎ替えるという力技でFedoraとWindowsを切り替えているので、Dual Bootできるようにハード側の整備をしなくては。

Kicad 5.1.12再挑戦その4

折角の英語環境があるので、Msysでの構成にも挑戦してみましたが、豪快にMsys2の環境生成で失敗。なんとかのバージョンがとか、シグネチャがとか多数文句が出ます。

これは言語環境では無く、そもそも引っ張ってくるMsys2のバージョン違いが問題なんでしょうけど、別世界から引っ張ってるのでしょうかね。とても謎。いつも言っているように、元の開発者グループがどうやってパッケージを生成しているのか本当にわかりません。

5.1.12についてはこれで一段落かな。次はLinux側で作業しますか。それ以前にLinux環境を再構築しなくてはならないので、少し面倒だな。

Kicad 5.1.12再挑戦その3

vcpkgの作成で結局7時間ほどがかかりました。その後のビルド作業中にglewとdoxygenが無いと苦情が出たので都度追加。結局このビルドの為にインストールしたのは、

  • cmake
  • git
  • vcpkg(オリジナルではなく、kicad用として提供されているものが必要)
  • swigwin
  • glew
  • doxygen

Visual Studio2019の機能としてcmakeとgitは含まれている感じなので、あえてインストールしておく必要は無かったかもしれませんが、vcpkgやKicadのソースの取り出しに使用したので、VSとは別に入れておいた方が良い気がします。

さて、警告は多数出たのですが、Build自体は2.5時間ほどで無事終了です。本体より環境構築の方が時間がかかっているのは癪なんですけどね。

相変わらずインストール用パッケージが生成されていないのは謎というか、反省点なのですが、まぁ需要が全くない自己満足ビルドなのでこれでOKかな。と言いたいところですが、元がWinbuilderと言っている以上インスートラーパッケージまで生成してくれないと不満が残ります。ビルドログに何か残っているかもしれませんね。

PCB sample

さて次はVM上の英語版Windowsではなく、英語環境として追加したユーザーアカウントで試したら何が起きるのかを確かめないと。

Kicad 5.1.12再挑戦その2

MSの開発用ライブラリから期間限定使用のWindows11の環境をダウンロード。VMplayerをインストールしてさっそく使用開始。

起動した画面はあちこちにあるサンプル通りの画像です。(左上になんか出てますが、そこはご愛敬ってことで)

開発テスト用ってことで最初からVS2019が入っているので、必要なのはcmakeなどのCLI系C++の開発ツール群をVSに追加してやるだけです。後はgitを入れて、PATHを通し、vcpkgのclone化と使用開始手順。次に環境変数VCPKG_DEFAULT_TRIPLETにx86-windowsをセットして、
.\vcpkg install boost cairo curl glew gettext glm icu libxslt ngspice opencascade opengl openssl python3 wxpython wxwidgets zlib
を書いてある通りに実行。流石にVM上なので結構時間がかかります。と言うか5時間経過してますが、まだこの手順が終了しません。しかしこちらの環境だとエラーになることもなく進行しているので、やはり元から英語環境でないとダメなんですね。

ちなみに日本語環境下でcp1251やcp65001を試してみましたが、同じエラーが出ますので、一時的対処ではダメなようですね。何か他の環境変数による指定が効いているのかもしれませんが、ぱっと見では見当たらない。

気になったので少し調べてみたら、ユーザー毎に言語系を変えられるようです。だとすれば英語系を使用する新しいユーザーアカウントを作ってそっちで作業すれば良かっただけのことだったかもしれません。後で試してみますか。

まぁ、Windows11に触れたのでとりあえず良しということですね。さて181/184で停滞しているvcpkgの処理。早く終わらないかな。

Kicad 5.1.12再挑戦

PCの再調整が終わったので、再度rebuildに挑戦。
本家を見ていたら「これからはWindowsの場合はMSVCだぜ!」ってな表記があったのでVSを入れて段取り開始。
VSのような便利なシステムをフルで無償利用させてくれるMSの太腹に感謝です。

vcpkgの構成の途中でwxpythonの構成でerror停止。msys2利用でも問題になるのですが、vcpkgでもエラー!
内容は構成の途中で文字コード変換からみでエラーになることが分かりました。なら対処法はと探ってみるとwxpythonのフォーラムで「よくわからないので、対処無し」と7月に書き込まれて放置状態。たぶん文字コード変換の必要のない環境では発生しない問題なのでしょう。

かくなる上は文字コードを英語に変更して試す必要があるのですが、これだけの為に再インストールは辛いな。普段使いにも不便になるし。

というわけでテスト用のWindows10イメージがマイクロソフトから提供されているので、VMに食わせて再挑戦してみますか。

久しぶりにKicad

コメント欄で新しい版が出ていることを教えていただきました。ようやく自宅PC環境が(windowsだけだけど)整ったので、さっそく作業開始。

ところが、コメントをくださった方と同じようにMsys2がメタメタ。パッケージのアップデートができない状況です。なので、こちらもMsys2をそっくり入れ替え。

あれこれ用事が有るので、今日はここまでかなぁ。
ある程度make_all.batが走るところまでは行きたいな。

22:20追記

やはりwxPythonからみのエラーが出たので、無効化して再実行。ソースがいつのまにか5.1.12になっていて驚きますが、さらには

  • CMake Error: The source directory “C:/kicad/msys64/home/xxxxx/MINGW-packages/mingw-w64-kicad-git/src/build-x86_64-w64-mingw32” does not appear to contain CMakeLists.txt.

なんてエラーが出て停止。本当に開発チームは提供されているkicad-winbuilderでスムーズにインストーラーパッケージが生成できているのだろうか?