ROCKPro64とROCK64の費用概算

個人メモ
ROCKPro64またはROCK64でハードディスク運用の場合の費用概算。
全てHDD、ディスプレイ、キーボード、マウス別。
X820関係以外全てPINE64ストア価格。
(X820はRaspberry Pi3用のUSB 2.0/3.0からSATA変換する基盤で2.5インチのHDD/SDDの装着が可能でスイッチとファンが付いた専用のメタルケース有り。ROCK64でも使用可。ROCKPro64は使用不可。電源はX820のみにつなぐためRaspberry Pi3のHDD使用時の電源容量問題を解決している。ROCK64は多分最初から電源容量問題はない。)
円とバーツは計算時のドルからの為替レート変換でクレジットカードのレートは多少値段が高くなると思う。

ROCKPro64 SATAカードとHDDを入れられるケースで理想構成
(HDD、ディスプレイ、キーボード、マウス別)
合計$188.42 6187.71バーツ 21325.38円
内訳
ROCKPro64 4GB 本体 $79.99
ROCKPro64 2×2 MIMO Dual Band WIFI 802.11AC?BLUETOOTH 4.2 MODULE $15.99
ROCKPro64 30mm Tall Profile Heatsink $3.49
ROCKPro64 Metal Desktop/NAS Casing $44.99
ROCKPro64 12V 5A US POWER SUPPLY $12.99
ROCKPro64 PCI-e to Dual SATA-2 Interface Card $9.99
PINE64ストアの送料 $11.99

ROCKPro64 ケースをけちりSATAカードを諦めた構成
(HDD、ディスプレイ、キーボード、マウス別)
合計$143.43 4710.24バーツ 16233.41円
内訳
ROCKPro64 4GB 本体 $79.99
ROCKPro64 2×2 MIMO Dual Band WIFI 802.11AC?BLUETOOTH 4.2 MODULE $15.99
ROCKPro64 30mm Tall Profile Heatsink $3.49
PINE A64 / ROCKPro64 ACRYLIC OPEN ENCLOSURE $8.99
ROCKPro64 12V 5A US POWER SUPPLY $12.99
ROCK64 USB3.0 to SATA3 HARD DRIVE ADAPTER CABLE $9.99
PINE64ストアの送料 $11.99

ROCK64 X820を使わない構成
(HDD、ディスプレイ、キーボード、マウス別)
合計$93.90 3083.68バーツ 10627.60円
内訳
ROCK64 4GB本体 $44.95
ROCK64 USB WIFI 802.11B/G/N (RTL8188EU) $6.99
ROCK64 PREMIUM ALUMINUM CASIC $12.99
ROCK64 POWER 5V 3A US SUPPLY $6.99
ROCK64 USB3.0 to SATA3 HARD DRIVE ADAPTER CABLE $9.99
PINE64ストアの送料 $11.99

ROCK64 X820を使う構成
(HDD、ディスプレイ、キーボード、マウス別)
合計$121.21 3980.54バーツ 13718.55円
内訳
ROCK64 4GB本体 $44.95
ROCK64 USB WIFI 802.11B/G/N (RTL8188EU) $6.99
ROCK64 / PINE A64 / PINE H64 Heatsink $0.50
PINE64ストアの送料 $11.99
X820+ACアダプターセット $35.19(aliexpress.com)
X820ケース $21.59(aliexpress.com 11月11日割引価格)

ROCK64のためにX820を買うのは値段的に有り得ない感じ。
本体だけの値段を見ると一見安そうだけど動くところまで持っていくと結構高くなる。
性能を考えると値段が高く感じる。

C++ Builder 10.2.3 Tokyo Android Error: “Unfortunately, Project1 has stopped.”

知らないうちにC++ Builderに無料のcommunity版ができていてProffesional版と同じ機能でさらにモバイル開発機能もついていた。
ちょっと試してみたAndroid studioが開発効率すごく悪そうなのでやっぱりC++ Builderが気になって10.2.3 TOkyoをインストールしてみたけども空のプログラムなのにSDKのエミュレーターのAndroid 5.1(ARMv7)とかWindows版のAndroidエミュレーターのNoxPlayer6(Android4.4.2)で、「Unfortunately, Project1 has stopped.」とエラーが出て動かない。
逆にSDKのエミュレーターで動いたのはAndroid 4.1(ARMv7)とか、Android 7.0(ARMv7)。
Androidのバージョンがちょっと変わっただけで動いたり動かなかったりするものは配布用途には使うわけにはいかない。
残念だ。
あとはAtomに対応していないのも致命的だ。
配布するなら面倒でも純正の開発環境使っていたほうが無難だと思う。

8月2日に火事全焼して、

持ち物は全て燃えた上にソースファイルは一部の公開していたものは除き全て消失してなかなか気を取り直せない状況です。
三か月ほどパソコンも無かったのですが、買ったら買ったでソースがないから火事前にできたことがほぼできない状態を直視しなければならずつらいです。

jhoja は Apache v2ライセンスと決まりました。

ベースにしたSWAG javap2のライセンスが未公開で不明であったため、javap2の著作権者のカナダのWaterloo大学とメールで話し合ってきました。
結果、不明だったjavap2のライセンスをApache v2と公式発表して頂きました。
それに伴い、jhojaもApache v2も正式に決まりました。
ライセンスがはっきりしたので、Vectorにも登録申請しました。

jhoja (Java逆アセンブラ for Jasmin、逆コンパイル阻止機能付き)を公開しました。

http://www.nabeta.tk/jhoja/
SWAG javap2ベースのJavaクラスファイルの逆アセンブラを公開しました。
二年前に作ってほぼ完成させていたのに二年放置して今頃公開です。
JasminというJavaアセンブラにかけられる状態のソースを出力します。
オプションで逆コンパイル阻止コードを埋め込むことができます。
Windows版ですがwineを使えばx86系のGNU/Linuxで動きます。
差分ソースも公開しています。

Javaの今後

数年後からオラクルからは無料のJavaはJDK、JREともに公開されなくなるってことでいいのかな?
Javaアプレットからの移行先としてすすめられていたJava Web Startもなくなるってことでいいのかな?
無料のJavaはOpenJDKが別途あるので細かいことを気にしない人には問題はないと思う。
でも細かいことを気にする人はJavaから離れていくのも間違いないと思う。
大企業が出しているものしか使えないとかセキュリティーうんぬんを言う人が出ると思う。
オラクルはボランティアでJavaをやっているわけではなく企業としての収入源としてJavaをやっているのだからオラクルが決めた方針に反論はない。
収入にプラスになるかどうかは知らないが。

Jasmin対応のJava逆アセンブラと、Java逆コンパイル阻止機能付き。

(追記。2018/3/12公開。http://www.nabeta.tk/jhoja/)
実は二年前にこれをほぼ完成させていましたがプログラムを公開することなく放置していました。
二年ぶりにちょっと再開してみました。
いちから作ったわけではなくSWAG javap2というJava逆アセンブラの改造です。
逆コンパイル阻止ツールが逆アセンブラとは別に存在するのではなく逆アセンブラのオプション機能で逆アセンブル時に逆コンパイル阻止コードを埋め込みます。
それをJasminでアセンブルすると通常の逆コンパイラでは逆コンパイルできないclassファイルが作れます。
JasminはJavaアセンブラです。
面倒だけども今度こそ公開しようと思う。

Java VM+JavaコンパイラのApache Harmony使ってみました。

Apache HarmonyがOpenJDKなどと違うところはライセンスがゆるくBSDライセンスに似たライセンスであること。
あとはOracleとライセンス契約したりJava互換認証を受けていないのでJavaもどきという立場かも知れない。
AndroidのJava VMのDalvikはApache Harmonyを改造したもの。
Javaの今後はどうなるのかという問題があるけども、AndroidでJavaもどきが生きているように、Oracleの動向関係なくApache Harmonyは使い続けることが可能なのではないかと思った。
OpenJDKでいいような気もするんですがOracleと密接につながっているような気がする。
でも、Apache Harmonyを使ってみると使い物にならんような感じ。
Java6対応ということですが、Java6で動くJEditorPaneやJComboBoxを使ったプログラムがうまく動かなかった。
動かない原因はよく分からない。
コンパイラはソース互換がいまいちなくて多少ソース修正が必要な部分があった。
例えば、Font.MONOSPACED が定義されていないので文字列の”Monospaced”に変えるとか。
コンパイラはOracleのJDK 1.6を使うこともできるけどそれで解決するのはコンパイルエラーだけでApache HarmonyのVMでのエラーや挙動は解決できない。
JbuttonとJMenuだけのプログラムはApache Harmonyでも動きました。
個人的にはSwingが動けば十分ですがApache HarmonyではSwingの一部にしか対応していないような気がする。
少ししか試していないので全体的なことは分かりません。
コマンドラインのプログラムなら多分問題ないかな?

少しQtやってみました。

2016年10月にQtはじめてすぐ飽きて放置していました。
なんでやめたのかは覚えてないです。
今Javaやっているのに中断してQtを少しやってみました。
コマンドラインでコンパイルするとエラーが出るようになっていました。
Cygwinのld.exeと衝突してたのが原因でした。
作りかけのプログラムを少しだけ進めました。
完成にはほど遠いです。
やる気が出るのを待つしかないが生きているうちにやる気がでるかどうかは分からない。