« 2017年10月 | トップページ | 2017年12月 »

2017年11月

2017年11月27日 (月)

Ver.2.0.8 リリース

Ver.2.0.8 をリリースします。

Qtのバージョンを 5.9.3 にアップデートしました。

Android版リリースに向けた修正が入っていますが、まだ対応途中です。


以下からダウンロードできます。(Windows/Linux/Mac版)


https://github.com/funfun-dc5/qtbrynhildr/releases


主な変更は以下です。


[その他変更]
・Qt5.9.3でビルドするように変更(Linux(x86)版のみ5.4.2のまま)


(注意)

Ubuntuでは付属のOpenSSLライブラリを使い場合以下のようなメッセージが表示される場合があります。


qt.network.ssl: QSslSocket: cannot resolve SSL_set_alpn_protos
qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_alpn_select_cb
qt.network.ssl: QSslSocket: cannot resolve SSL_get0_alpn_selected


(今後のお話)

Ver.2.1.0 でAndroid(タッチデバイス)に対応予定ですが、2.0.9 の次が 2.0.10 になったりするかも(^_^)
そしていつしか 2.0.33 とかに…(iOSでの動作確認はリリース後にするつもりです)

で、もし十分実用に耐えうるものになったらGoogle Playから提供したいと思うのですが、その時は少しだけ開発支援を頂くかもしれません。先日ダメになったノートPCのバッテリー分くらい…

もちろんAndroid向けのコードを含むすべてのプラットフォーム向けのソースコードを公開しますので、ローカルにビルドすれば無料で使うことも可能です。


-----------------------------------------------------------------------------------
[SHA256SUM]
-----------------------------------------------------------------------------------
a49ca4b2005eb84f4e9c3d25524d70b8f4511ed74ae101af6aef11a19ec379c5 *QtBrynhildr64-windows-v208-msvc.exe

7ffa1905f8fb93b7e064d4db4381fc2ad61b01a9cd347192f67ead8fcaf3f847 *QtBrynhildr64-windows-v208-Portable.exe

d7952f1bf921f427fb6efed5f8db586e2c92c0e554128dac39cf355b562b8aa0 *QtBrynhildr-documents-20171125.zip

c5b59b84318549d3a36c56246647deb37f134042d0f5a4d0789e1a13bbe10b95 *QtBrynhildr-linux_x64-v208.run

576f765cc68bc12c3e697954ec3b4afe7c5bf6744f26091bd376491c79269d38 *QtBrynhildr-macosx_x64-v208.dmg

dc4a05d872ccb3efba7ec7a22236f21b6a8550471b890ad44b3bb4de27cbc916 *QtBrynhildr-windows-v208-msvc.exe

9f7ba66f507b34fd260c9dda5ae37a2163c689b02c9a35e5be7da1308f01b07e *QtBrynhildr-windows-v208-Portable.exe

2017年11月25日 (土)

Qt 5.9.3 がリリースされました

Qt 5.9.3 が11/22にリリースされました。


-------------------------------------------------------------------------------------

以下の件後日再発しました。Windows Subsystem for Linuxが原因ではなかったようです、すみません。発生したり、しなかったりで謎です。

(追記:2017.11.27)

調べ直しました。

MinGW版でリンクされるDLLはこんな感じです。

$ objdump -p release/QtBrynhildr.exe |grep 'DLL Name:'
DLL Name: Qt5Core.dll
DLL Name: Qt5Gui.dll
DLL Name: Qt5Multimedia.dll
DLL Name: Qt5Network.dll
DLL Name: Qt5Widgets.dll
DLL Name: libgcc_s_dw2-1.dll
DLL Name: IMM32.DLL
DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll
DLL Name: libwinpthread-1.dll
DLL Name: SHELL32.dll
DLL Name: WINMM.DLL
DLL Name: WS2_32.dll
DLL Name: WSOCK32.DLL


main()に辿り着く前にコケるので、MinGWのランタイムが競合している可能性が高いですね。

Makefile.Releaseをエディタで開いて LFLAGS に"-static-libgcc -static-libstdc++"を追加して保存します。

release/QtBrynhildr.exeを削除して再度"make"を実行しリンクし直します。

で、実行すると普通にウィンドウが立ち上がりました。やはりどうやら別の場所にあるランタイムと競合しているようです(;ω;)

次に"-static-libgcc"と"-static-libstdc++"を別々に指定して試すとどうやら"-static-libstdc++"がないとダメみたいです。 ということは実行時にビルド時とは違うlibstdc++のDLLを参照してるんでしょうね…


-------------------------------------------------------------------------------------


試してみようと思いましたが、事前確認のため5.9.2でMinGW版の起動を確認したら起動せず、いきなり落ちました。

"make debug"でデバッグ版を作ってgdbで確認しました。

Program received signal SIGSEGV, Segmentation fault.
0x0048bdde in _pei386_runtime_relocator ()

main()に届く前のランタイムで落ってるぽいです。他のアプリケーションに同梱されているMinGWランタイムが悪さをしているような感じなのですがこれまで発生したことがないので妙です。

最近インストールしたアプリケーションをアンインストールして確認したのですが、一旦起動できてもPCを再起動したら再発したりして原因が掴めません。

半日ほど無駄にしたあと、最近なにかインストールしたかな…と考えていたら1つ思い出しました。

2日前に「Bash on Ubuntu on Windows」を試そうと思い"Windows Subsystem for Linux"を有効にしてそのまま放置していたのです。

とりあえず"Power Shell"を管理者権限で起動して以下を実行して再起動しました。


Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux


ようやく落ちなくなりましたが「Bash on Ubuntu on Windows」を試すことが出来ないのでスッキリしませんね…(ま、なくても不自由しないからいいか)


(参考)
https://msdn.microsoft.com/ja-jp/commandline/wsl/install-win10


(追記)

GitHubで公開しているWindows版パッケージはMSVC版ですので影響はありません。


(追記:2017.11.27)
後日再発しました。以下の件Windows Subsystem for Linuxが原因ではなかったようです、すみません。

2017年11月14日 (火)

Android版 Ver.2.0.0 の作業 その4

デスクトップ画像表示周りを見直してどうにかClosedなα版としてくらいならリリースできそうなところまできました。

Qt5.9だとAPI level 16以上なのでAndroid 4.1以降ということになりそうですがどこまで対応できるかは実際試してみないと分かりません。さまざまなスクリーンサイズへの対応のためのレイアウト調整機能は要調整だと思います。

あと、まだ検証が十分ではありませんがBluetooth Keyboardを繋いで日本語レイアウトに設定すればそのまま使えるようです。

Bluetoothでマウスも繋がったらいいんのですが、所有してないので検証できていません…ヽ(´▽`)/
(microB to A の変換アダプタも持ってないし…)


Screenshot_20171114141430


2017年11月 6日 (月)

Ver.2.0.7 リリース

Ver.2.0.7 をリリースします。

11/2 にOpenSSLがアップデートされましたのでWindows版同梱のDLLを最新の1.0.2mに更新しました。
その他仕様の小変更を含んでいます。

Android版リリースに向けた修正が入っていますが、まだ対応途中です。


Nexus7(2013)で遅いという現象は結局私の実装上の問題でした…

今時のデスクトップPC向けのマシン(CPU)なら問題にならなかった以下の2つの処理の遅さの問題が露呈したようです(;ω;)


1. YUV420からRGB24への変換が遅かった

シングルスレッドで地道に計算。SIMD命令も未使用。


2. デスクトップ画像そのものを拡大/縮小していたため処理時間がかかった

ビューポート的な概念など全く考えもせず、力技で拡大/縮小していた(^_^;


動作速度上の問題はクリアできたようなので、後は地道にタッチパネル操作の調整かな、と思います。


以下からダウンロードできます。(Windows/Linux/Mac版)


https://github.com/funfun-dc5/qtbrynhildr/releases


主な変更は以下です。


[その他変更]
・サーバ接続中はdesktopScalingTypeを変更できない仕様に変更
・Windows版に同梱しているOpenSSL DLLを1.0.2mへ更新


(注意)
Ubuntu 17.10の日本語Remixが11/4にリリースされましたが、動作確認は出来ていません。
標準になったWaylandでなくXorgに変更する必要はあるんでしょうね、多分…


(追記: 2017.11.10)

Qt Brynhildr そのものはWayland環境でもとりあえず動きました。メニューがウィンドウの上に戻ったので少し嬉しいですね。

Wayland環境でReadMe.txtどおりにQt5.9.2をインストールしようとするとインストーラがコケるので、一旦Xorg環境でログインして、Qt5.9.2をインストールするのが簡単かもしれません。

Wayland/Xorg環境はログイン画面で簡単に選択できるようになっています、すばらしい。

-----------------------------------------------------------------------------------
[SHA256SUM]
-----------------------------------------------------------------------------------
61a6d35b0316df4310493891be0c55cc1b153437b9995b5dd9f798a528b7a720 *QtBrynhildr64-windows-v207-msvc.exe

314cec69a59691da6b1b8e6207c42a7c33eb0a4cae96d6e7b890bc269a417cd5 *QtBrynhildr64-windows-v207-Portable.exe

89d1435cb41d9af47cb1c052b1b680a745a6b69c21e4329911b17d1361fc9008 *QtBrynhildr-linux_x64-v207.run

ba63b3c92004e43397dd345fb520f4844dde84b6fc3058c5cc2b6d17b0bd2cf3 *QtBrynhildr-macosx_x64-v207.dmg

44403562fac062465e7a217730a678da9c9164c9907462f6ea7176ebcd472c74 *QtBrynhildr-windows-v207-msvc.exe

551c317cb44576112998e4e851ec18e96b4288295aaa75999c454c68d60f7ded *QtBrynhildr-windows-v207-Portable.exe

« 2017年10月 | トップページ | 2017年12月 »