EPUBファイルを Kindle で読むためには EPUBファイルから MOBIファイルに変換する必要があります。今までは Amazon から提供されている KindleGen というコマンドラインツールを使用することで変換できたのですが、最近 macOS Catalina (10.5) で実行したところ以下のようなエラーが出て MOBIファイルの出力に失敗しました。
$ brew cask install kindlegen
$ kindlegen example.epub
-bash: /usr/local/bin/kindlegen: Bad CPU type in executable
このエラーですが、どうやら macOS Catalina (10.15) が 32bit をサポートをしていないために起こるエラーのようです。何か解決する手段はないかなと調べてみたところ、同じく Amazon が提供する Kindle Previewer 内にも KindleGen が含まれており、こちらを代わりに使用することにしました。
Homebrew から Kindle Previewer をインストールして、中の kindlegen
に対してシンボリックリンクを貼ります。もし既に KindleGen がインストールされている場合、事前に KindeGen をアンインストールする必要がありますのでご注意ください。
$ brew cask install kindle-previewer
$ ln -s /Applications/Kindle\ Previewer\ 3.app/Contents/lib/fc/bin/kindlegen /usr/local/bin/kindlegen
すると以下のように、kindlegen
を使って EPUBファイルから MOBIファイルへの変換ができるようになります。
$ kindlegen example.epub
*************************************************************
Amazon kindlegen(MAC OSX) V2.9 build 0000-kdevbld
A command line e-book compiler
Copyright Amazon.com and its Affiliates 2015
*************************************************************
...