- 投稿日:2020-05-30T22:46:32+09:00
MacBookの移行とベンチマーク
タイトルは釣りです…と言えるくらい情報量が少ないですが、I/O速度にかなり差が出てしまったので記録しておくことにしました。他にも測定したら書き足すかもしれません。
MacBook Air
% ruby -ve 't = Time.now; i=0;while i<100_000_000;i+=1;end; puts "#{ Time.now - t } sec"' ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19] 1.538574 sec % dd if=/dev/zero of=tmpfile bs=1m count=1000 1000+0 records in 1000+0 records out 1048576000 bytes transferred in 2.771232 secs (378379018 bytes/sec)MacBook Pro 13-inch
% ruby -ve 't = Time.now; i=0;while i<100_000_000;i+=1;end; puts "#{ Time.now - t } sec"' ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19] 1.572779 sec % dd if=/dev/zero of=tmpfile bs=1m count=1000 1000+0 records in 1000+0 records out 1048576000 bytes transferred in 0.414705 secs (2528487736 bytes/sec)移行作業
Macの移行ツールは使わず、アプリは全て新たにインストールし直して、rsyncコマンドで必要なファイルだけ転送しています。wifi経由のrsyncがやたらと遅い印象があったため、転送速度を検証しようとしたのが発端でした。LANケーブルで直結したところ5.5倍速になりましたが、それでもちょっと物足りない感じ。何が足を引っ張っているのでしょうか?(まあでも高々100G弱のデータだったので、これで済ませましたが)
% scp 10.250.85.144:tmpfile ./Downloads/ tmpfile 21% 212MB 2.0MB/s 06:33 ETA% scp 169.254.3.115:tmpfile ./Downloads/ tmpfile 6% 67MB 11.2MB/s 01:23 ETA
- 投稿日:2020-05-30T21:46:21+09:00
Mac mini (2018) + Blackmagic eGPU Pro の組み合わせで Boot Camp 環境の Windows 10 を使用することはできない(たぶん......)
この記事は、もしかすると読むだけ時間の無駄になる可能性があるのでご注意ください。
ぼくと同じように、今後 Boot Camp 環境で eGPU を使おうかなと思っている方がいたら、それには相当な覚悟が必要かもしれないし、ぼくのように結局うまくいかなくて終わる可能性もある、ということが事前に知っていただけたら幸いです。
使用する Mac の種類(MacBook Pro など)や eGPU の種類によっては、この記事に書いてある手順で動作するかもしれませんが、サポートされている方法ではないので基本的には動かないと思ったほうが良いです。
はじめに
少し前から唐突に PC ゲーム(VR 含む)をやりたくなりました。ところがぼくは Mac しか持っていないので Boot Camp を使用して Mac に Windows 10 をインストールして遊ぶことにしました。
ところが、ゲームはまともに動作しませんでした。それもそのはず、ぼくが持っている Mac mini (2018) は GPU を積んでいない(Intel UHD Graphics 630 を除く)ので、動画編集やゲームのような大量のグラフィック処理を行うことができません。
それならば、ということで、Apple が公式に販売・サポートしている Blackmagic eGPU Pro を使用すればゲームも快適にできるのではないかと考えたのです(現在、Blackmagic eGPU Pro は販売終了しており、Apple Store から購入することはできません)。
実は、Apple は Boot Camp 環境の Windows 10 は eGPU には「対応していない」と言っています。
しかし、インターネットでいろいろ調べてみると、非公式ではあるものの、eGPU を Boot Camp 環境の Windows 10 で使用する方法がたくさん出てきます。当初はそこまで本格的にゲームをするつもりはなかったので、とりあえず Full HD 30fps くらいで動いてくれれば良いという気持ちで環境構築を始めました。
しかしこの考えが地獄の始まりでした......。
今回の記事は「結局、解決しませんでした」というオチなので正直誰かの役に立つ内容ではないと思いますが、インターネット上では具体的にどのような解決方法が提示されているのか、なぜ Boot Camp 環境ではうまくいかないのか、あたりは参考になるかなと思いこの記事を書くことにしました。
TL;DR
以下に示す記事の内容・ツール等は一通り試しましたが、ぼくの環境ではどれもうまくいきませんでした。
解決法を試した記事・使用したツール・参考にした記事一覧(クリックで展開)
- Boot CampのWindows10でeGPUが使えるように!
- [EFI Loader] Error 12 Fix in Boot Camp for Apple T2 Security Chip Macs (apple_set_os loader v0.5)
- 0xbb / apple_set_os.efi
- [Solved] automate-eGPU EFI - eGPU boot manager for macOS and Windows
- eGPUとRADEON RX5700XTでMac mini 2018をゲーミングPC化した
- bootcampdrivers.com
- Mac mini(2018)のBootCampでRX5700XTをeGPUとして使う!
- BOOT CAMP EGPU SETUP GUIDE – WINDOWS GAMING WITH MACS
- [GUIDE] keeping iGPU activated when booting into Windows using apple_set_os.efi
- Mac mini 2018 + bootcamp + eGPU(vega 56)
- automate-eGPU EFI - Mac bootscreen on eGPU
- Trying to get Vega 56 to work in Windows with a 2019 iMac.
- Use your eGPU under BootCamp with MacBook Pro and Mojave
- DSDTを編集してWindowsにeGPUを正しく認識させる
- CloverによるDSDTの上書き
- eGPU でどこまでゲームが速くなるか?
- MacBookPro(mojave)のbootcampでblackmagic egpuを使う方法
- MacBookにBoot CampしてeGPUを繋ごう
使用したデバイス・環境
種類 内容 Mac Mac mini (2018) eGPU Blackmagic eGPU Pro (AMD Radeon RX Vega 56) macOS macOS Catalina バージョン 10.15.4 と 10.15.5 Windows Windows 10 バージョン 1909 と 2020 (Insider Program)
そもそもなぜ Boot Camp 環境では使えないのか?
Blackmagic eGPU Pro という商品は、Apple が公式でサポートしている eGPU なので、当然 macOS では動作します。Mac と Blackmagic eGPU Pro を Thunderbolt 3 対応の USB-C ケーブルで接続するだけで使えます。
それと同じ要領で Boot Camp 環境の Windows 10 で使おうとしても、使えません。Windows 10 を起動する前に eGPU を接続する場合と、起動したあとで eGPU を接続する場合とで使えない理由が異なります。
Windows 10 起動前に eGPU を接続していた場合
Mac の電源を落とした状態で、eGPU をあらかじめ接続しておきます。その状態で Mac の電源を入れて Windows 10 を起動すると、画面に何も映りません。
Mac 本体とモニターと接続しても、eGPU 側とモニターを接続しても、何も映りません。起動する前にモニターと接続しておいても、途中で接続しても、抜き差しを繰り返しても、別の端子に接続しても、USB-C 接続から HDMI 接続にしても、映りません。
理由としては、Apple のファームウェアが関係してくるようです。Mac は、macOS 以外の OS が起動しようとすると Apple のファームウェアが eGPU を制御しようとします。そのとき Windows 10 はカーネルの起動の最中だったりするので、Apple のファームウェアに邪魔されて、eGPU をうまく制御できなくなります。その結果、画面には何も映らなくなります。
Windows 10 起動後に eGPU を接続した場合
それならば、Windows 10 が起動したあとに eGPU を接続すれば良いのではと考えますが、これもうまくいきません。
Windows 10 は仕様上、4 GB 以上のメモリを使用するデバイスが接続された際にリソース不足というエラーを出します。コード 12 というエラーです。
eGPU は大量のリソースを消費するため、起動後に接続してもエラー 12 で使用不可能な状態となってしまいます。
macOS では上記のいずれの問題も発生しないように設計されているため接続するだけで認識・動作しますが、これが Windows 10 となると一筋縄ではいかなくなります。
というわけで、この問題を解決しないと Boot Camp 環境では eGPU が使用できないというわけです。ここから先は、ぼくが実際に試した方法(結局どれもうまくいきませんでしたが)を順番に紹介していきます。
? 事前準備
作業する際に使用する OS macOS (リカバリーモード)
以下のいくつかの方法を試す前に、あらかじめ SIP やセキュリティブートを無効化しておく必要があります。
SIP を無効化する方法に関してはこちらを参考にしてください。
【上級者向け】System Integrity Protection (SIP) を無効にする方法セキュリティブートを無効化する方法に関してはこちらを参考にしてください。
「安全な起動」について「安全な起動」は「完全なセキュリティ」から「セキュリティなし」に変更し、「外部起動」は「外部メディアからの起動を許可しない」から「外部メディアからの起動を許可」に変更します。
? ??????? apple_set_os.efi を使用する
作業する際に使用する OS macOS または Windows 10
おそらく一番最初(か 2 番目)に出てくる方法が
apple_set_os.efi
を使用する方法ではないでしょうか。仕組みとしては、Apple のファームウェアをバイパスして Windows 10 を起動させるための UEFI みたいです。この UEFI を間にかませて Windows 10 を起動することで eGPU を認識した状態にすることができるようです。
手順 1: パーティションを作成する
apple_set_os.efi
をブートローダから読み込ませるためのパーティションを用意します。この作業は、macOS、Windows 10 のどちらからでも作業できます。
apple_set_os.efi
ファイルを置くだけなので、パーティションのサイズは小さくて良いです。フォーマットの際のファイルシステムについては後述します。パーティションの作成方法に関しては以下を参考にしてください。
OS リンク macOS で作業する場合 Macのディスクユーティリティで物理ディスクにパーティションを作成する Windows 10 で作業する場合 Windows10 新しいドライブ(パーティション)を作成する 手順 2: apple_set_os.efi を配置する
apple_set_os.efi
を以下の GitHub のページからダウンロードします。Releases · 0xbb/apple_set_os.efi
最新バージョンの
apple_set_os.efi
をダウンロードします。先ほど作成したパーティションに
apple_set_os.efi
を配置します。ファイルを置くだけなのですが、ブートローダに認識させるためにはディレクトリ構造とファイル名が重要になります。具体的にはEFI/BOOT/bootx64.efiというディレクトリ構造とファイル名にします。つまり、
apple_set_os.efi
をbootx64.efi
にリネームして、EFI/BOOT
ディレクトリを作り、その中に配置します。手順 3: ブートローダを開き、apple_set_os.efi をロードする
macOS または Windows 10 を、再起動、またはシステム終了してからもう一度電源を入れます。そして、OS が起動する前にキーボードのオプションキーを押し続けます。するとブートローダが開きます。
そこには、
Windows
(Windows 10) とMacintosh HD
(macOS) の他に、EFI Boot
という起動ディスクがあると思いますので、それを選択して起動します。
▲ キーボードの左右の矢印キーで移動してEFI Boot
を選択した状態でリターンキーを押します。すると apple_set_os の黒い画面が表示されます(下図のような画面)。その画面が表示されたら約 6 秒以内に(その黒い画面が消えてしまう前に)Blackmagic eGPU Pro を接続します。
eGPU 接続前 eGPU 接続後 ▲ eGPU 接続後は一番下に
00001002 0000687F AMD - Vega 10 XL/XT [Radeon RX Vega 56/64]
という行が追加されているのがわかります。Blackmagic eGPU Pro を認識しています。eGPU を認識したら、そのまま待つか、
z
以外の何かしらのキー(リターンキーで良いと思います)を押すと Windows 10 が起動します。
この手順で Windows 10 が起動すると、本来なら eGPU が使えるようになるようです。が、ぼくの環境では残念ながら使えませんでした。
他の方法とも合わせて何度か試しているうちに症状が変わったりすることもありましたが、使えるようになることは一度もありませんでした。以下、参考までに症状を書きます。
症状 1: ドライバエラー(エラー 12)になる
これは
apple_set_os.efi
などを使わずに、Blackmagic eGPU Pro も接続せずにふつうに Windows 10 を起動して、そのあと Blackmagic eGPU Pro を接続した場合と同じ症状です。つまり、エラー 12 を解決できていません。
▲ Blackmagic eGPU Pro を認識はしているものの、「ドライバエラー」となり使用できません。「再起動してください」と出ることもありますが、再起動しても「ドライバエラー」のままです。症状 2: 映像が全く映らない
これは
apple_set_os.efi
などを使わずに、Blackmagic eGPU Pro を接続した状態で電源を入れて Windows 10 を起動した場合と同じ症状です。Mac mini 本体側、Blackmagic eGPU Pro 側含め、どの端子を使用してもモニターには何も映像が映りません。はじめからモニターと接続した状態で電源を入れたり、電源を入れてからモニターと接続したり、いろいろ試しましたが、ダメでした。症状 3: そもそも認識しない
Windows 10 上では、まるでケーブルを挿していないのと全く同じ状態となります。デバイスマネージャーを開いてみても、そもそも認識していません。
認識はしている場合 (症状 1) 認識すらしていない場合 (症状 3)
apple_set_os.efi
をロードしたときの黒い画面では Blackmagic eGPU Pro を認識していたので、ケーブルが抜けているとか接触が悪いとかそういうことではありません。
いろいろな試行錯誤をしてみましたが解決せず。
試行錯誤 1: パーティションのファイルシステムやサイズを変えてみる
apple_set_os.efi
を置くパーティションのフォーマットをいろいろ変えてフォーマットしてみました。
- FAT → eGPU が使えない
- FAT32 → eGPU が使えない
- APFS → そもそもブートローダに表示されない
FAT のときは 80 MB、FAT 32 のときは 10 GB、APFS のときは 6 GB と、試すたびにパーティションをサイズがバラバラでしたが、それは本質的ではないような気がします。
試行錯誤 2: ファイルのパーミッションや所有者を変えてみる
apple_set_os.efi
(実際にはbootx64.efi
にリネームしています) のパーミッションのせいでうまく動かないとか、そんなことあるかなーと思いつつも、いろいろ試してみることが重要だと思い試しました。でもやはりダメでした。試行錯誤 3: ディレクトリ名の大文字小文字を変えてみる
絶対に違うよなーと思いつつ、これも試しました。もちろんダメでした。
EFI/BOOT/bootx64.efi
EFI/Boot/bootx64.efi
efi/boot/bootx64.efi
いずれもロードはされますが本質的なところは変わりません。というかむしろ大文字でも小文字でもちゃんと認識するんだ、という驚きが少しありました。
試行錯誤 4: 挿す端子を変えてみる
Mac mini には USB-C 端子が 4 つあります。どの端子に接続してもダメでした。
試行錯誤 5: apple_set_os.efi がロードされる前に接続してみる
最初は Blackmagic eGPU Pro を接続しない状態で電源を入れ、
apple_set_os.efi
がロードされてから接続して認識させていましたが、電源を入れる前からあらかじめ接続しておき、apple_set_os.efi
をロードする方法も試してみました。結果的には、これでも
apple_set_os.efi
の黒い画面上では Blackmagic eGPU Pro を認識していました。でも結果は同じです。試行錯誤 6: apple_set_os loader v0.5 を試してみる
以下のフォーラムにある手順を試してみても変わらず。
[EFI Loader] Error 12 Fix in Boot Camp for Apple T2 Security Chip Macs (apple_set_os loader v0.5)
というわけでいろいろ試しましたがダメでした。
? ??????? automate-eGPU EFI を使用する
作業する際に使用する OS macOS または Windows 10
これが 2 番目(か一番最初)に出てくる方法だと思います。
[Solved] automate-eGPU EFI - eGPU boot manager for macOS and Windows
上記のフォーラムにある通りに進めます。EFI Package をダウンロードして展開すると、
EFI
というフォルダが出てきます。先ほど
apple_set_os.efi
を作成したパーティションがあるので、そのパーティションを空にして(apple_set_os.efi
は削除して)代わりに automate-eGPU EFI を配置します。展開したEFI
フォルダの中身をそのまま配置すれば OK です。
ディレクトリ構造としてはこのような感じです(クリックで展開)
. ├── EFI │ ├── BOOT │ │ ├── BOOTX64.efi │ │ └── automate-eGPU.efi │ └── CLOVER │ ├── ACPI │ │ └── WINDOWS │ ├── config.plist │ ├── drivers64UEFI │ │ └── apple_set_os.efi │ └── misc └── __MACOSX ├── ._EFI └── EFI ├── ._BOOT ├── ._CLOVER ├── BOOT │ ├── ._BOOTX64.efi │ └── ._automate-eGPU.efi └── CLOVER ├── ._ACPI ├── ._config.plist ├── ._drivers64UEFI ├── ._misc ├── ACPI │ └── ._WINDOWS └── drivers64UEFI └── ._apple_set_os.efiこの状態で、
apple_set_os.efi
のときと同じようにブートローダを起動し、automate-eGPU EFI をロードします。ブートローダ上ではapple_set_os.efi
のときと同じようにEFI Boot
という名前の起動ディスクがありますのでそれを選択してロードします。すると
apple_set_os.efi
と似たような黒い画面が表示されます。なぜか Blackmagic eGPU Pro を接続してもeGPU not detected
と表示されるのですが、GPU の情報が書かれている欄には 2 つの GPU が表示されているので Blackmagic eGPU Pro も認識していることがわかります。(片方は CPU 内蔵の Intel UHD Graphics 630 で、もう片方が Blackmagic eGPU Pro だと思います)。
eGPU 未接続時 eGPU 接続時 ▲ 表の右の画像のように、
GPU(s)
の欄に[0x1002 0x687F]
が追加されていれば Blackmagic eGPU Pro を認識している状態だと思います。eGPU not detected
というのが気になりますが。その画面でキーボードの
q
を押すと、macOS を起動するか Windows を起動するかを選択できますので、Windows を選択してリターンキーを押します。すると Windows 10 が起動します。
▲ キーボードの上下の矢印キーで移動し、Load Windows
を選択してリターンキーを押します。なお、
apple_set_os.efi
のときはこの黒い画面が表示されている間に eGPU を接続すると認識して画面を更新してくれますが、automate-eGPU EFI の場合は接続を認識してくれなかったので、電源を入れる前に Blackmagic eGPU Pro を接続しておく必要があります。しかしこれも同じ結果でした。発生した症状も試したことも
apple_set_os.efi
と同じです。? rEFInd を使用する
作業する際に使用する OS macOS
rEFInd というのは、フリーで使用できるブートローダです。これを使わなくても Mac の電源を入れてオプションキーを押し続けた状態で起動する Apple のブートローダを使用すれば良いような気もしますが、これでうまくいったという例もあったので念のため試してみました。
rEFInd のインストール方法は、上記の記事に書いてあるものを参考にさせていただきました。rEFInd の場合はオプションキーを押し続ける必要はない(というかオプションキーを押し続けると Apple のブートローダが起動してしまいます)ので若干楽です。
再起動するかシステム終了してからもう一度電源を入れると rEFInd の画面が表示されます。ここで先ほど紹介した
apple_set_os.efi
や automate-eGPU EFI をロードして Windows 10 を起動しますが、やはりこれも結果は変わりませんでした。??????? AMD の公式ページからドライバをインストールする
作業する際に使用する OS Windows 10
ドライバエラー(エラー 12)と表示されることが多かったですが、そもそも正しいドライバがインストールされていないのでは? と思い、公式ページからドライバをインストールすることにしました。
Blackmagic eGPU Pro に搭載されている GPU は AMD Radeon RX Vega 56 なので、このチップに対応したドライバを AMD のページからダウンロードします。
Radeon™ RX Vega 56 Drivers & Support
Windows 10 - 64 ビット版を選択してダウンロードします。Revision Number が異なるものがいくつかありますが、試したのは一番上のものです。
ダウンロードしたら、EXE ファイルを実行します。Blackmagic eGPU Pro を接続していない状態で実行すると、AMD の GPU を認識できませんという趣旨のエラーが表示されるのであらかじめ接続しておきます。この時点ではドライバエラーと表示されていても問題ありません。
接続するとインストールできるようになります。詳細オプションで工場リセットのチェック項目がありますが、チェックした場合は再起動を求められます。チェックしない場合とチェックする場合、両方試しました。
しかし、インストールは完了するものの、グラフィックスデバイスに潜在的な問題があるというエラーが表示され、ドライバを適用することができませんでした。インストール自体はうまくいっているようですが、やはり Blackmagic eGPU Pro は使えませんでした。
何度か試して、この画面が表示されたあとに再起動を求められることもありましたが、再起動しても特に何も変わりませんでした。
このエラー(エラー 207)に関してインターネットで調べてみてもよくわかりませんでした。
??????? BootCampDrivers を使用する
作業する際に使用する OS Windows 10
bootcampdrivers.com にアクセスすると、ロゴの下に "Unofficial, turbo-charged AMD graphics drivers for Mac users running BootCamp" と書かれていたので、もしかして Boot Camp 環境では、AMD の公式ページのドライバではダメで、こちらを使用しないとうまくいかないのかな? と思いました。なのでこれを試してみることにしました。
ページ左上あたりの "Downloads" から "Windows 10 ..." → "2020 drivers ..." と進み、"Adrenalin April 2020 Red Gaming edition (Best FPS in games)" を選択しダウンロードします。
外部ページに飛び、ダウンロードボタンを押すと何やらサインイン(サインアップ)を求められますが、サインインしなくても問題なくダウンロードできます。
インストール手順に関しては以下のリンクで YouTube 動画が公開されているのでそちらの動画を見ながら進めます。
BootCampDrivers Installation Video
おおまかな手順としては、DDU というものを使い既存のディスプレイドライバーを削除してから AMD のドライバをインストールするというものです。
BootCampDrivers からダウンロードしてきたフォルダの中にある
Setup.exe
というのが AMD のドライバになるのですが、これが AMD の公式ページからダウンロードしてきたものと同じなのか、それとも BootCampDrivers 用にカスタマイズされたものなのかは不明です。とりあえずここではSetup.exe
を起動してドライバをインストールしました。YouTube の説明動画ではドライバインストール後に成功しましたというメッセージが出ていますが、ぼくの環境ではやはり公式ページからダウンロードしてきたドライバのときと同じようにエラー 207 が発生してしまいました。当然 Blackmagic eGPU Pro も使えない状態でした。
試行錯誤 1: 違うドライバをインストールしてみる
BootCampDrivers には何種類かのドライバが用意されており、その中に Red edition と書かれているものと Blue edition と書かれているものがあります。両者の違いが何なのかはよくわかりませんが、とりあえず両方とも試してみました。しかしどちらも同じエラー 207 が発生してしまいました。
試行錯誤 2: DDU で既存のドライバを削除後、AMD 公式ページからダウンロードしたドライバをインストールしてみる
もしかしたら既存のドライバが残ってしまっていたから、公式ページからダウンロードしたほうのドライバがうまくいかなかったのかなとも思い、既存のドライバを削除後、公式ページからダウンロードしたほうのドライバをインストールしました。しかし結果は変わらず。
BootCampDrivers からダウンロードしてきたドライバも、公式ページからダウンロードしてきたドライバのときと同様に、工場リセットや、インストール後の再起動なども行いましたがやはりダメでした。
Mac mini や Blackmagic eGPU Pro 自体は正常に動作する
ここまでくるともはや Blackmagic eGPU Pro が壊れているんじゃないかと疑うレベルでうまくいきません。
なので、そもそも Blackmagic eGPU Pro が正しく動作しているかを確認するために、macOS を起動して、macOS に対応しているゲームをやってみることにしました。もちろん購入することになるので、実際にやりたいゲームの中で、macOS に対応しているものを Steam で探しました。
正直やりたいゲームはほとんど Windows のみ対応で macOS 対応のものがほとんどなかったのですが、「Life is Strange 2」は macOS 対応だったので購入して遊んでみることにしました。
まず Blackmagic eGPU Pro を接続せずにプレイしてみると、明らかに映像処理が追いついていなくて映像がカクカクでした。設定で解像度や画質を調整することができるのですが、画質を一番低い設定まで落として解像度も HD くらいまで下げてみたのですが、それでも 30fps 出ていないくらいカクついていました。
次に Blackmagic eGPU Pro を接続してモニターを eGPU 側に接続してプレイしました。結果は明らかに違いました。かなりサクサク動作します。解像度を 4K にして画質も最高画質にしても問題ありませんでした。ただ視点切り替えのときに若干フレームレートの低下が気になるので、解像度を 2K まで下げたら全く問題なくなりました。
というわけで、Blackmagic eGPU Pro 自体は間違いなく動作はします。しかしやはり Boot Camp 環境だとうまくいきません。もしかしたら Windows が認識していないだけで、本当は eGPU が有効になっているんじゃないか? とか淡い期待を抱いたりもしましたがそんなことはありませんでした。
うまくいかなかった理由はわからない
もちろん Apple は Boot Camp 環境では非対応だと言っているので文句があるわけでは全くないのですが、非公式とはいえこれだけインターネット上に解決策が示されているのに、どれを試しても全くうまくいかないのは正直よくわかりません。
ただ、インターネット上で紹介されているのは、MacBook Pro + eGPU box や、Mac mini + Blackmagic eGPU (Pro がつかないもの) だったりして、Mac mini + Blackmagic eGPU Pro という、全く同じ組み合わせの例でうまくいったという記事は、調べた限りでは見つかりませんでした。まあでも、eGPU であることに変わりはないので、本質的には変わらないと思うのですがねえ......。
ましてや Mac mini + Blackmagic eGPU (Pro がつかないもの) でうまくいっている例があって、Blackmagic eGPU Pro に搭載されている AMD Radeon RX Vega 56 は Blackmagic eGPU Pro 専用に作られたチップではなく Windows PC にも搭載されているものであり、Mac と相性が悪いと言われている(サポートも切れている)NVIDIA の GeForce でもないのに、うまくいかないのは一体なぜなんでしょう......。
しかも、Mac mini には最近の MacBook Pro のように dGPU が搭載されていない分、dGPU を共存させて動作させるとかさせないとかいうことを考える必要もないのでむしろうまくいく可能性は高い気がするんです(詳しくはわかりませんが egpu.io のフォーラムではそのように書かれていました)。
まだ試していない方法
調べた限りで出てきた方法はほとんど試しましたが、まだ試していないものといえば少し古いバージョンの Windows 10 を使うとか、古いバージョンの macOS を使うというものです。
でもここ数日、さんざんやってダメだったので、これでうまくいく希望は正直持てないし、わざわざ古いバージョンの OS を入れ直すという気力も起こりません。仮にこれでうまくいったとしても、そうなるともう OS のアップデートができなくなってしまうということになります。古いバージョンで脆弱性が発見されたとなればもうお終いです。
ストレージ不足(個人的な話)と eGPU のパフォーマンス低下の問題
あと、これはぼく個人の環境の話になりますが、Mac mini のストレージは 512 GB のもので、Boot Camp 環境なので、Windows 10 に割ける容量はもっと少なくなります。そうなるとゲームをインストールするには少し足りなくなってくる気がします(たとえば FF15 は 100 GB 使うようです)。まあ外付け SSD とかをつければ良いのかもしれませんが、外付けだらけでデスクがごちゃごちゃになります。
それから、Blackmagic eGPU Pro はたしかに高性能ですが、VR ゲームを快適に動作させるほどのパワーがあるかどうかは謎です。eGPU だとその性質上、パフォーマンスが 20 〜 30 % ほど落ちてしまうようなので、AMD Radeon RX Vega 56 の 75 % ほどの性能と考えると、どうなんでしょうね......。
というわけで、結論としては ↓
結論
PC ゲームをやりたいなら、素直にゲーミング PC を買うか自作しましょう(知ってた)
- 投稿日:2020-05-30T21:29:01+09:00
Linuxコマンドを言語化
はじめに
私のPCはMacです。OSはMacOSを使用しています。
ターミナルではLinuxOSと同様にLinuxコマンドが使えます。
シェルはzshでした。ターミナルでecho $0
と入力すると、使っているシェルを見ることができます。bashを使っている物だと思っていたのですがzshでした。bashとzshの違いは以下のリンクで調べ学びました。
- bashとzshの違いLinuxコマンドを、今までなんとなく使っていたのですが、そもそもMacOS使ってるのにLinuxOSのもの使ってるってどうゆうこと?と調べていくうちに疑問に思ったので調べました。ターミナルでのコマンドはLinuxOSとほぼ共通しているらしいです。以下のリンクで疑問が結構解消できました。
- Linuxとは
- ターミナルの使い方この記事では、アウトプットするためにLinuxコマンドを言語化しました。ほぼ自分の学習用です。
間違いがありましたら訂正していただけると幸いです。Linuxコマンドを言語化
・
tabキー
入力補完ができます。もう一回tabキー
を押すと候補を表示してくれます。・
control + r
前に使ったコマンドを検索。更にcontrol + r
で複数検索に引っかかている場合の2つ目を表示します。・
control + c
現在入力中のコマンドを安全に終了できます。・
cd -
直前にいたディレクトリに移動します。・
cd ..
1つ上の階層のディレクトリに移動します。・
cp -r
再帰的にデイレクトリをコピーします。再帰的とは、中にあるディレクトリやファイルまで見るということです。多分。
参考サイト: 再帰的とは?・
cp ファイル名 コピー先
ファイルをコピーできます。・
mv
ディレクトリやファイルを移動できます。・
mv ファイル名 変更後のファイル名
現在いるディレクトリのファイル名を変更できます。・
ls -R
再帰的に今いるディレクトリの下の階層のディレクトリやファイルを表示します。
参考サイト: 再帰的とは?・
mkdir
ディレクトリを作成します。・
touch
ファイルを作成します。
参考サイト: 新規ファイル作成・
rmdir
空のディレクトリを削除できます。
中身がある場合はrm -r
で削除できます。・
ls
今いるディレクトリの直下にあるディレクトリやファイルを表示します。・
mv
ディレクトリやファイルを移動します。・
cat
指定したファイルの中身を表示できます。・
less
中身が長い時に使えるコマンドです。中身を表示してくれます。control + f
1画面先にcontrol + b
1画面前にg
画面の先頭G
末尾に移動q
lessの終了・
history
コマンドの履歴を見ることができます。! + historyで表示された数字
でコマンドを呼び出して実行することができます。!!
で直前のコマンドを実行することもできます。!-2
だと2個前のコマンドを実行することができます。・
!$
直前に渡した引数(文字列)を呼び出すことができます。
前にlsコマンドを実行していたと仮定して!l
を入力すると直前に使ったlsコマンドを実行できます。前にpwdコマンドを実行していたとしたら!p
や!pw
などで直前に使ったpwdコマンドを実行できます。
実行せずに直前に使ったコマンドを確認するには!l
に続けて:p
を入力します。そうすると直前に使ったlsコマンドを実行せずに表示してくれます。!pw:p
だと直前に使ったpwdコマンドを実行せずに表示してくれます。
!pw:p
の後に、!!
を入力すると表示されていたpwdコマンドが実行されます。その他参考URL
最後に
この記事を読んでいただきありがとうございました。
Twitter: @SHUN15949496
- 投稿日:2020-05-30T21:17:57+09:00
Ruby環境構築まとめ~mac版~
はじめに
あたらしくmacを購入して、Rubyの環境を作り直す機会があったので備忘録としてまとめます。
Homebrewをインストール
まずhomebrewをインストールします。(もうすでにインストール済みの人は大丈夫です)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"このコマンドをターミナルで実行するとインストールが完了します。
wgetのインストール
wgetをインストールします。
brew install wget
Rubyのインストール
wgetのインストールが完了したら、Rubyのインストールに入っていきます。
手順としては
- homebrewでrbenvをインストール
- パスを通す
- rubyのインストール
と言った感じです。
では、rbenvをインストールしていきます。brew install rbenv brew install ruby-buildこの二つのコマンドを実行してインストールします。
インストールが終わったら、パスを通していきます。echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.zshrc source ~/.zshrcこれでrbenvのインストールとパスを通すことができました。
いよいよRubyをインストールしていきます。rbenv install --list rbenv install 2.6.6 rbenv rehash rbenv global 2.6.61つ目のコマンドでダウンロードできるRubyのバージョン一覧を確認できます。
2つ目のコマンドでダウンロードするRubyのバージョンを指定します。(今回は2.6.6を選択しました)
3つ目のコマンドでrbenvの再読み込み、4つ目でdefaultで使うバージョンの指定をしています。一通りの作業が終わったら、ターミナルで
ruby -v
をやって自分が先ほど指定したバージョンになっているか確認してみてください。
なっていなかったら、pathがうまく通ってない可能性があるので、zshrcを確認してみてください。
- 投稿日:2020-05-30T18:18:13+09:00
firebase login ができない時の対処法
概要
ReactをFirebaseにHostingしようとした際にハマったのでメモ
状況
yarn create react-app my-appして
yarn add firebase-toolsして
firebase loginちなみにこの後に聞かれるY/nはどっちでもいいです。
エラー
何度やってもログインできない、、、。
対処法
調べたらこれをするといいらしい。
firebase login --no-localhostこれでもできない場合はsslの検証をパスする以下の環境変数を設定します。
export NODE_TLS_REJECT_UNAUTHORIZED=0firebase login解決
firebase init? What do you want to use as your public directory? (public) //buildにしますyarn buildfirebase deployで公開完了。
- 投稿日:2020-05-30T17:12:00+09:00
Macのバージョンをコマンドラインから確認する
以下のコマンドを使う
$ sw_vers例
$ sw_vers ProductName: Mac OS X ProductVersion: 10.13.6 BuildVersion: 17G4015
- 投稿日:2020-05-30T16:24:36+09:00
写真を正しい向きで表示する(EXIF情報を元に画像自体を回転する)
iPhoneなどで撮影した写真を開くと、思った通りの向きで表示されないことがある。
私が直面したのは、iPhoneの写真アプリだと正しい向きで表示されるが、PS4のメディアプレイヤーだと変な向きで表示されてしまう、というもの。PS4でも正しい向きで表示されるようにする、というお話。
2020.05.31 追記
zshスクリプトで実装してみた。
→https://github.com/hosota9/ImageRotationどうして変な向きで表示されるのか?
iPhoneで撮影した写真はJPEG形式(もしくはそれに近い形式)で保存される。
JPEG形式の画像ファイルには、画像以外にも撮影日や撮影場所など様々な情報が記録されており、その中には撮影時のカメラの向き(回転情報)も含まれている。
この回転情報のおかげで、iPhoneを90°回転して撮影したとしても、表示するときにカメラの向きが考慮され、正しい向きで表示することができる。ただし、世の中にはこの回転情報を無視して画像を表示するソフトがある。
PS4で変な向きで表示されたのは、これが原因と思われる。どうすれば良いか?
画像自体を回転して保存し、回転情報を削除すれば、どんなソフトでも正しい向きで表示されるはず。
やってみた
回転情報の確認
まずは
exiftool
というツールで回転情報(EXIF情報)を確認する。
Homebrewが入っていれば簡単にインストールできる。$ brew install exiftool回転情報は Orientation という項目に格納されている。
$ exiftool <JPEG画像ファイル名> | grep Orientation | awk -F": " '{print $2}' Rotate 90 CW"Rotate 90 CW" すなわち「時計回りに90°回転(して表示する)」の意。
画像自体の回転
画像自体の回転は、MacOSに標準で入っている
sips
コマンドが利用できる。
時計回り90°回転する場合は、以下を実行する。$ sips -r 90 <JPEG画像ファイル名>回転情報の削除
ここまでの操作で、回転情報を無視するソフトで正しい向きで表示されるようになる。
ただし、回転情報を考慮するソフトでは変な向きになるため、回転情報を削除する。回転情報を削除するには、
exiftool
で Orientation を "1" すなわち「回転しない」に変更する。$ exiftool -Orientation=1 -n <JPEG画像ファイル名>以上です。
- 投稿日:2020-05-30T13:12:06+09:00
朝飯前にMacのローカルにLaravel環境を構築する
Mac ローカルにPHPをインストールする
サクッとLaravel環境を作りたい時ってありますよね?
カップ麺を作る時間すらも惜しい...そんな時...MacのローカルにLaravel環境を構築する手順をご紹介します。
Mac標準のPHP
$ which php /usr/bin/php $ php -v PHP 7.3.11 (cli) (built: Feb 29 2020 02:50:36) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologiesこれでもいいんですけど、バージョンが古かったりzip拡張機能がデフォルトで入ってなかったりするので少し面倒なので、HomebrewでPHPをインストールします。
複数のPHPバージョンを使い分けたい訳ではなく最新版のPHPが使えればいいので、今回はanyenvやphpenvは使いません。
Homebrew からPHPをインストールする
$ brew install php
~/.zshrc
に環境変数のPATHにPHPのパスを追加します。$ echo export PATH='/usr/local/opt/php/bin/php:$PATH' >> ~/.zshrcシェルを再起動して設定ファイルを読み直します。
$ exec $SHELL -lPHPのバージョンが更新されたらokです。
$ php -v PHP 7.4.6 (cli) (built: May 29 2020 01:44:57) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.6, Copyright (c), by Zend TechnologiesHomebrewからインストールしたPHPに入っているPHP拡張機能です。
$ php -m [PHP Modules] bcmath bz2 calendar Core ctype curl date dba dom exif FFI fileinfo filter ftp gd gettext gmp hash iconv intl json ldap libxml mbstring mysqli mysqlnd odbc openssl pcntl pcre PDO pdo_dblib pdo_mysql PDO_ODBC pdo_pgsql pdo_sqlite pgsql Phar phpdbg_webhelper posix pspell readline Reflection session shmop SimpleXML soap sockets sodium SPL sqlite3 standard sysvmsg sysvsem sysvshm tidy tokenizer xml xmlreader xmlrpc xmlwriter xsl Zend OPcache zip zlib [Zend Modules] Zend OPcacheこれだけ入っていれば十分でしょう。
Homebrew からComposerをインストールする
$ brew install composer$ composer -V Composer version 1.10.6 2020-05-06 10:28:10SQLite
データベースは何でもいいですが、今回は導入が手軽なSQLiteにします。
$ brew install sqlite$ sqlite3 --version 3.28.0 2019-04-15 14:49:49 378230ae7f4b721c8b8d83c8ceb891449685cd23b1702a57841f1be40b5daaplLaravelインストーラ
Laravelのバージョンの指定は必要なく最新版をインストールして使いたいのでLaravelインストーラを入れておくと便利でしょう。
$ composer global require laravel/installerグローバルに
laravel/installer
が追加されていたらokです。$ composer global show | grep laravel Changed current directory to /Users/ucan/.composer laravel/installer v3.1.0 Laravel application installer.
~/.zshrc
に環境変数のPATHにPHPのパスを追加します。$ echo export PATH='$HOME/.composer/vendor/bin:$PATH' >> ~/.zshrcシェルを再起動して設定ファイルを読み直します。
$ exec $SHELL -lLaravelのインスール
上記の作業は寝る前に事前に済ませておきましょう。
Laravelのインストールはもはや朝飯前です。$ laravel new blog$ cd blog $ php artisan --version Laravel Framework 7.13.0Laravelビルトインサーバを起動する
$ php artisan serve
control
+c
でサーバーを停止できます。LaravelとSQLiteを接続する
.env
を修正するDB_CONNECTION=sqlite #DB_CONNECTION=mysql #DB_HOST=127.0.0.1 #DB_PORT=3306 #DB_DATABASE=laravel #DB_USERNAME=root #DB_PASSWORD=データベースファイルを作成する
$ touch database/database.sqlite$ php artisan migrate Migration table created successfully. Migrating: 2014_10_12_000000_create_users_table Migrated: 2014_10_12_000000_create_users_table (0 seconds) Migrating: 2014_10_12_100000_create_password_resets_table Migrated: 2014_10_12_100000_create_password_resets_table (0 seconds) Migrating: 2019_08_19_000000_create_failed_jobs_table Migrated: 2019_08_19_000000_create_failed_jobs_table (0 seconds)最後に
Laravelの環境構築の記事をいくつか書いているのでよかったら読んでもらえたら嬉しいです!
(情報が古くなってるものもありますが...)
- 投稿日:2020-05-30T12:00:17+09:00
ターミナルでgit branch名を表示する
ターミナルにブランチ名を表示
いいかげんgit branchって打ちたくないのでターミナルでブランチ確認できるように設定追加するようにしました。
$ sudo vim ~/.bash_profile
# Git branch in prompt. parse_git_branch() { git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' } export PS1="\W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "最後に
$ source ~/.bash_profile
で更新すれば良い。参考URL
https://gist.github.com/joseluisq/1e96c54fa4e1e5647940
余談
ちなみにユーザ名とホスト名も表示したかったら以下のように書けば良い。
\uはユーザ名で\hはホスト名らしいです。長いので自分は表示しない。export PS1="\u@\h \W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "
- 投稿日:2020-05-30T11:06:33+09:00
Mac で VHS から動画を取り込み 480i MOV を ffmpeg で 480p H.264/mp4 にする
タイトルまんまです。いま、自宅の片付けの一環として VHS で持っている動画を電子化して物理媒体を破棄する作業中でして、ここに自分の備忘録も兼ねてその方法をメモしておきます。
用意するもの
- VHS ビデオデッキ
- メルカリで探すと、条件が悪く動作確認無しのもの 2000 円程度から業者っぽい質がある程度担保されてそうなもの 5000 円程度までの価格レンジ (送料込み) で手に入ります。
- 今回用意したのは懐かしのアイワブランド (Sony 買収後) のビデオデッキ HV-FR150 です。
- RCA コンポジットビデオキャプチャコード
- Amazon で "VHS ビデオキャプチャ" で検索すると色々でてくるやつで、謎の輸入品 1200 円程度から、名の通ったメーカー品 4000 円程度までの価格レンジです。
- 今回は口コミ等を参考に、macOS Catalina で動作確認が取れている "ezcap 159 USB 2.0 Video Capture" というのを選びました。
Mac への取り込み
Windows 上でのビデオキャプチャは専用ドライバ・専用ソフトで行うのが主流なようですが、Mac ではドライバだけ入れて QuickTime で録画するのが主流のようです。
ezcap の箱を開けるとドライバの入った光学ディスクが同梱されていて、Mac 対応を謳いながらも印字されているロゴが OS9 時代のロゴで一抹の不安を覚えましたが、macOS Catalina でもすんなりとドライバがインストール出来ました。
ドライバが入ったら、MacBook Pro <-> USB Type-C / Type-A アダプタ <-> ezcap <-> RCA コンポジットケーブル <-> ビデオデッキのビデオ出力、の形に接続して QuickTime を立ち上げます。
QuickTime では、ファイル -> 新規ムービー収録、を選ぶと新しいウィンドウが立ち上がり、録画が可能になるので、動画と音声の入力に ezcap を選びます。
ここでビデオデッキからの映像や音声の出力が確認できれば準備は完了です。ビデオデッキ側の操作で VHS を再生し、QiuckTime 上の録画ボタン (赤い丸) をクリックすれば録画が始まります。実際の再生時間分は待たないといけないので、2 時間テープの 3 倍モードなんかを取り込みたい場合は 6 時間かかります。気長に待ちましょう。
動画のトリムと変換
前述の方法で録画すると動画のフォーマットは Mac 標準の MOV 形式になります。動画のエンコードを完全にリアルタイムで行う必要があるため、エンコードに時間がかかる高効率な動画形式を使えない事情は分かるのですが、MOV 形式はファイル容量がクソでかくて 720 x 480 でも 1 時間で 20GB くらいになります。
VHS から取り込む際に含まれてしまう最初と最後の要らない部分をトリムしたいところですが、録画が終わったそのままの状態でオンメモリ (実質的には SSD 上へのスワップ状態) で編集しようとすると、ふいに長時間レインボーカーソルになったりして、録画に待たされた何時間もの時間が無駄になってしまわないかと心臓に悪いです。なので、録画が終わったらまずいったんファイルに保存してしまうことをお勧めします。あとは QuickTime 上でトリムも出来るのでトリムした上で保存し直しましょう。
ストレージ容量が無限にあるならこれで終わりでも良いですが、SD 画質 1 時間に 20GB はさすがにあほらしいので H.264 に変換したいですね。また VHS はインターレース動画なので、ブラウン管で見ていた時代ならまだしも、現代のディスプレイで動きの速い場面を見ると視聴に耐えません。ですので ffmepg で動画を変換しこれらの問題を解決します。
ます Homebrew が入ってない場合は Google など参考にインストールし、次のコマンドで ffmpeg をインストールします。
$ brew install ffmpegそして次のコマンドで動画を変換します。
movie.mov
が入力ファイル、movie.mp4
が出力ファイルです。$ ffmpeg -i movie.mov -vf w3fdif -pix_fmt yuv420p movie.mp4これは色々検索して辿り着いたオプション値で (ありがとうインターネット!)、簡単に説明すると
-vf w3fdif
がインターレースの解除、-pix_fmt yuv420p
が Mac の QuickTime で再生可能な H.264 動画を生成するオプション、拡張子.mp4
で出力形式を自動判別、という感じです。それらのオプションに指定可能な追加パラメータもあるのですが、全てデフォルトで上手く動いているようなので、特に何もいじっていません。そして変換が完了すると、ファイル容量は元のファイルの約 3 % になり、動きの速い場面でもブレが見えないプログレッシブ動画になっていました。
最後にオマケになりますが、これらのオプションを覚えられる気が全くしなかったので、
.bash_profile
に簡単な関数を追加して、コマンドラインから簡単に使えるようにしています。.bash_profilefunction conv-movie(){ ffmpeg -i $1 -pix_fmt yuv420p $2 } function conv-movie-deinterlace(){ ffmpeg -i $1 -vf w3fdif -pix_fmt yuv420p $2 }$ movie-conv-deinterlace movie.mov movie.mp4
- 投稿日:2020-05-30T01:07:14+09:00
MacでNintendo Switch のジョイコンを使う
プレゼンのときにジョイコン使いたい
古い記事ではJoystick Mapperを推奨しているんだけど
古い記事を見ると、有料ソフトの「Joystick Mapper」を紹介している記事が多かったので買おうかと思ったけど、2020/05/30時点の評価は、2.9。
しかも、「使えなくなりました」というコメントまで記載しているので、これは有料で買ってうまく行かなかったら嫌だな。。と。
https://apps.apple.com/jp/app/joystick-mapper/id528183797?mt=12見つけたぞ。今はまだ無料だ。JoyKeyMapper。
色々App Storeで漁っていたら評価が5.0の「JoyKeyMapper」を見つけた。
https://apps.apple.com/jp/app/joykeymapper/id1511416593?mt=12
迷わずインストールしよう。
つなぎ方
ジョイコンをニンテンドースイッチ本体から取り外すと、SL,SRの間に「ボタン」があるので押すとペアリングモードになるので、MacのBluetoothをONにすると簡単に接続ができる。
Joy-Con(L) または (R) をおもむろに接続し、JoyKeyMapperを起動
最初は、何も設定されていないので動かないが、上記の設定を参考に好きにカスタマイズすると、色々使えて便利かと思う。
Chromeブラウザの戻る、進むを左と右に割り当てて、ブラウジングも片手でできるようにした設定。これで、プレゼンをジョイコンですることができるはずだ。
- 投稿日:2020-05-30T00:22:44+09:00
Macの電源ボタンを無効化する方法
Macの電源ボタンを無効化する方法について紹介します。
意外と日本語の記事が見当たらなかったのでこちらに残しておきます。
結論
PowerKey.appという有料アプリ(2020年5月現在で5USD)を使うことで、電源ボタンを無効化、もしくは他のキーにリマップすることができます。
注意点として、電源ボタンの長押しによるシャットダウンは防ぐことができません。
参考: PowerKey https://github.com/pkamb/PowerKey
なぜMacの電源ボタンを無効化したいか?
私はMac Book ProのJIS配列を使っています。
ただ、キーボードはUS配列の方が手に馴染みます。そこで、US配列の「Anker ウルトラスリム Bluetooth ワイヤレスキーボード」や「Magick Keyboard 2」をMacに載せて使っています。
外付けのキーボードをMacに載せるとタイピングのたびに内臓キーボードが反応してしまい困るわけですが、そこはKarabiner-Elements.appの出番です。外部キーボードを接続している時は内臓キーボードを無効化できます。
ただ、Karabiner-Elements.appでは唯一電源ボタンは無効化できません。電源ボタンが無効化できない、つまり有効化になっていると、タイピングのたびにちょっと電源ボタンに触れただけでスリープモードになってしまいとても不便に感じていたわけです。
- 投稿日:2020-05-30T00:08:50+09:00
Macのcurl使ってクライアント証明書付きでアクセスするとcurl: (58) could not load PEM client certificateが出る
MacでCurl使ってクライアント証明書を添付してアクセスすると
okanofumiaki@okano ~ % curl https://hogehoge.net/ -E ./user.pfx:password curl: (58) could not load PEM client certificate, LibreSSL error error:09FFF06C:PEM routines:CRYPTO_internal:no start line, (no key found, wrong pass phrase, or wrong file format?)とエラーがでます。
どのように解決したかを記載します。結論
homebrewにてopensslをインストールする
原因
MacOSにてopensslで呼び出されるモジュールはopensslではなくLibreSSL
opensslのバージョンを確認することで確かめられる。okanofumiaki@okano ~ % openssl version LibreSSL 2.8.3まじか・・・・・
解決方法
opensslをインストールします。
ググればいろいろ出てきますが、brewでopensslをインストール
brew install opensslパスが通ってないのでbash_profileに書く
echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profilebash_profileを読み込む
source ~/.bash_profileopensslのバージョンを確認する
okanofumiaki@okano ~ % openssl version OpenSSL 1.1.1d 10 Sep 2019これでオッケー。
検索用キーワード
Mac
openssl
curl
client certificate
LibreSSL error
クライアント証明余談
あ…ありのまま 今 起こった事を話すぜ!
「おれはopensslを実行していたと思っていが、opensslじゃなかった・・・」
な… 何を言っているのか わからねーと思うが
おれも 何をされたのか わからなかった…
頭がどうにかなりそうだった… 催眠術だとか超スピードだとか
そんなチャチなもんじゃあ 断じてねえ
もっと恐ろしいものの片鱗を 味わったぜ…