fu7mu4’s diary

はてなダイアリーから移転しました。

Failure is Success

Failure is Success

作業がうまく評価できない会社では失敗しないと成功できないのではないだろうか?

Worse is better ではなく Failure is Success.

どういうことかというと、作業をそのままうまくすすめると評価できない。 ただ失敗して損失か損害がでると、この作業にはこれだけの価値があったのだなと理解される。 そして失敗時のリカバリーの苦労している作業をみて、ああ、仕事していると、困りごとを解消していると評価されるのである。 つまり最初から問題がおきない作業は、よくわからないが彼には簡単な作業だろうからたいした仕事ではないと低くみられてしまうのである。 このような会社では何事も誰かが失敗しないと重要な仕事だと認識されない。誰かが失敗したあとリカバリーに成功した人だけが評価される。

いやぁ、怖い。こんな会社はないよね。ないよね。

macOS に OpenJDK の Java をインストールする

macOS に OpenJDK の Java をインストールする

adoptopenjdk にいけば OpenJDK のバイナリが無料で手にはいる。

  • OpenJDK 8
  • OpenJDK 11
  • OpenJDK 15

macOS の場合、pkg インストーラーを使用すると、file://Library/Java/JavaVirtualMachines/AdoptOpenJDK-.jdk/ 以下にインストールされるもよう。

java_home コマンドでどんなJava がインストールされているか確認できる(ただしXML形式)

/usr/libexec/java_home -X
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
    <dict>
        <key>JVMArch</key>
        <string>x86_64</string>
        <key>JVMBundleID</key>
        <string>net.adoptopenjdk.11.jdk</string>
        <key>JVMEnabled</key>
        <true/>
        <key>JVMHomePath</key>
        <string>/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home</string>
        <key>JVMName</key>
        <string>AdoptOpenJDK 11</string>
        <key>JVMPlatformVersion</key>
        <string>11.0.10+9</string>
        <key>JVMVendor</key>
        <string>AdoptOpenJDK</string>
        <key>JVMVersion</key>
        <string>11.0.10</string>
    </dict>
    <dict>
        <key>JVMArch</key>
        <string>x86_64</string>
        <key>JVMBundleID</key>
        <string>net.java.openjdk.11.0.2.jdk</string>
        <key>JVMEnabled</key>
        <true/>
        <key>JVMHomePath</key>
        <string>/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home</string>
        <key>JVMName</key>
        <string>OpenJDK 11.0.2</string>
        <key>JVMPlatformVersion</key>
        <string>11.0</string>
        <key>JVMVendor</key>
        <string>Oracle Corporation</string>
        <key>JVMVersion</key>
        <string>11.0.2</string>
    </dict>
    <dict>
        <key>JVMArch</key>
        <string>x86_64</string>
        <key>JVMBundleID</key>
        <string>net.adoptopenjdk.8.jdk</string>
        <key>JVMEnabled</key>
        <true/>
        <key>JVMHomePath</key>
        <string>/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home</string>
        <key>JVMName</key>
        <string>AdoptOpenJDK 8</string>
        <key>JVMPlatformVersion</key>
        <string>1.8.0_212-b03</string>
        <key>JVMVendor</key>
        <string>AdoptOpenJDK</string>
        <key>JVMVersion</key>
        <string>1.8.0_212</string>
    </dict>
</array>
</plist>

あとは java_home コマンドで JAVA_HOME 環境変数を設定して切り替えればいいらしい。

export JAVA_HOME=$(/usr/bin/java_hone -v 11)

Version upgrade

macOS Version upgrade

Version upgrade on some software

いくつかのソフトを更新した

  1. macOS
  2. Command Line Tools
  3. OmegaT
  4. Racket

このうち Command Line Tools の更新は macOS の更新があったときに同時に表示されていたので、macOSの更新と同時にできていると期待していたのにできてなかった。そんなものなのかなと、個別に更新

Solved: VirtualBox on macOS big sur does not work well

Solved: VirtualBox on macOS big sur does not work well

macOS Big SurでVirtualBoxが動かないので対応した話を読んでそのとおりにした。

sudo kmutil load -b org.virtualbox.kext.VBoxDrv

これを実行したあとシステム環境設定→ セキュリティとプライバシー→一般 を開くと再起動を求められた。

再起動の後、VirtualBox を起動して Linux イメージを起動すると、アクセス許可を設定するよう指示がでた。

アクセス許可は二種類あったかもしれない。

Big Sur でも Qt Linguist がつかいたい

Big Sur でも Qt Linguist がつかいたい

TLDR; Qt 公式のインストーラ

私は、CppCheck のGUI部分の日本語翻訳を担当している。そのGUI部分は Qtなので、Qt Linguist が使いたいのである。さてどうしよう。macOS を Big Surにアップグレードしてしまったぞ。

  1. macport を使う
  2. homebrew を使う
  3. 誰かの野良ビルドを使う
  4. Qt 公式のを使う

1. macport を使う

brew じゃなくて port なのに特に意味はなかった。強いていえば、以前から macport を使っていたから。

たぶんできるだろうとたかをくくってトライしてみたものの macport では qtlinguist はなんというport なのかがわからない。適当にqt5-qtbase かと インストールにチャレンジすると、インストールできなかった。Big Sur は 11.0 なのに 10.16 って検出されてエラー吐いて死 ぬみたい。もうすでに検討中の もよう。5.15.2 ならできそうという情報だけがわかった。

2. homebrew を使う

はいはい、最初っから brew/cask 一択じゃん?と思うだろ。違うよ、 Qt-Creator ならこれで正解だよ。みんな好きなんかな。

brew install --cask qt-creator

でも、これじゃあ qt-creator ははいるけど、qt-linguist はいらないよね、 たぶん。でもダメ元でインストールしてみるか。やっぱりはいらないじゃん。 そうだよね。はは、cask に qt-linguist ないのか。ないのか。

3. 誰かの野良ビルドを使う

えー、じゃあ、 lelegard/qtlinguist-installer いっとく?うん、とりあえずインストールして使うならそれでいいのかな?ま、 インストールしてみたら動作はするね。うん。でも野良ビルドいれたくない なぁ。

公式に macOS 用にビルドしてくれないかなぁ。チラっ

4. Qt 公式のを使う

というわけで、公式いっておきますか。Supported Platform に 11.0 ないけど、これは更新が遅れているだけだよね。そうであってください。

さて、Open Source Qt Use のページにいくと、一番下にDownload the Qt Online Installer ってあるね。ははーこれかな。

4.1 Qt Online Installer

Qt Online Installer を起動すると、おしゃれなインストーラーがでてくる。ぽちぽちとすすめればいいんかなと思っていたら、Qt アカウント作成してよといわれる。

4.2 Qt アカウント

よしよしと Qt アカウントを作成して、オープンソースとして利用とか個人として開発とかにポチポチするだけだったよしよし。

4.3 Qt Online Installer

あとはダウンロードが終るのを待つだけだった。最初から Qt Online Installer を選べばよかった。

4.4 更新

$QtInstallDir/5.15.2/clang_64/bin に Linuguist がインストールできていた。これだよね。起動確認と。 あとは、$QtInstallDir/5.15.2/clang_64/bin に Linuguist がインストールできていた。これだよね。起動確認OK。

更新は $QtInstallDir/MaintananceTool.app からできるもよう。よかったよかった。

消毒用アルコール

消毒用アルコール

新型コロナ禍のさなか、手指の消毒用のアルコールはさまざまなところにある。ちょっと店に入ればそこに、アルコール消毒が置いてあるのだ。

その手指消毒用のアルコールは何の変哲もない普通の容器にはいっていた。プッシュしたら透明のアルコールがしゅっとでる。そこになんの疑いもせずに、私は押した。

にゅるにゅるっと粘度の高いアルコールがでてきた。アレナニカオカシイゾ。しかし次の人も後ろに控えているので一歩前、一歩前とすすんでしまう。アルコールなのか?どろどろとした透明の液体がべっとりと手についたままだった。アルコールだよね。アルコールだよね。そういいきかせてもう一歩前へ。どろりとしたままの手ですたすたと前にすすむしかなかった。アルコールってジョウハツするんじゃなかったけ。あれおかしいな。どろどろのままだった。

アルコール消毒したはずが、べっとりとした粘性アルコールのなにかまみれだ。

しかたがないのでティッシュでぬぐいとったが、取れたきがしない。なんだこれ。 最終的にトイレにかけこんで石鹸でしっかりと手を洗った。結局アルコールいらなかったな。