SketchUp を Mac にインストールして使用していたのですが、 Mac のタッチパッドだといまいち操作性が良くありませんでした
大画面でマウスを使って操作したかったのでデスクトップの Linux マシンにインストールしてみました
SketchUp は Linux 版が提供されていないので Wine を使用することになります (公式の FAQ にもしれっと記述があった
WineHQ にも SketchUpのWikiページ があり情報がまとめられています
ただ多少ハマった部分があったのでやったことを残しておく
まず 公式サイト からインストーラを入手する
自分がダウンロードしたのは SketchUpMake-ja-x64.exe
だった
インストール後にバージョンを確認したら 15.3.331 64ビット
となっていた
デフォルトの Windows XP
だとバージョンチェックで起動できないので winecfg
を起動して Windows 7
へ変更する
インストールするディレクトリを変えたい場合は WINEPREFIX
環境変数を使ってwine関係のコマンドを実行する
(デフォルトでは ~/.wine
が使われる)
$ WINEPREFIX=${HOME}/winedir/sketchup winecfg
次にインストーラを起動してインストールする
Wine の USE フラグに X abi_x86_64 fontconfig jpeg mono opengl png ssl truetype xcomposite
を追加しておいた
インストーラの起動も winecfg と同様に WINEPREFIX を使って起動する
$ WINEPREFIX=${HOME}/winedir/sketchup wine64 SketchUpMake-ja-x64.exe
これでインストーラが起動するはずだけれど手元の環境ではフォントのサイズが極端に大きくなっていて
画面のレイアウトが操作できないレベルで崩れていた
タブを4回、スペースを1回押すことでインストールを続行できた
インストールができて起動してみると mfc100u.dll
が必要であるというエラーがでて起動できない
mfc100u.dll は Visual C++ の再頒布可能パッケージに含まれているのでそれを入手する必要がある
mfc100u.dll は このサイト によると Visual C++ 2010 または Visual Studio 2012 に含まれている
今回は 2010 の方を使用した
Microsoft のサイトへ行くと vcredist_x64.exe
を入手することができる
このファイルを実行して展開する必要があるのだけれど、どうしても Wine を使ってはうまくできなかったので
仕方なく Windows のマシンを使用して展開した
Windows のコマンドプロンプトで /x:c:\target\dir
のようにオプションを指定しすると
指定したディレクトリへ中身を展開することができた
> vcredist_x64.exe /x:c:\target\dir
展開したファイルの中に vc_red.cab
というファイルがあるので
それを更に展開すると F_CENTRAL_mfc100u_x64
をいうファイルを入手することができる
Linux で展開する場合は cabextract
コマンドが利用できる
F_CENTRAL_mfc100u_x64
を Linux の環境へコピーしたら system32
へ mfc100u.dll というファイル名でコピーする
$ cp F_CENTRAL_mfc100u_x64 drive_c/windows/system32/mfc100u.dll
以上で基本的な作業は終了
これ以外の細かい設定は、 SketchUp を起動するには実行するユーザが video
グループに所属していることと
実行時のオプションに /DisableRubyAPI
が必要だった
libGL error: failed to open drm device: Permission denied
が起きる場合、実行するユーザがvideoグループに所属していない
libGL error: unable to load driver: i965_dri.so
が起きる場合、 media-libs/mesa
で classic
USE フラグが有効になっていないので
/usr/lib/dri/i965_dri.so
が存在しない
err:ntdll:RtlpWaitForCriticalSection section 0x2c8b8 "?" wait timed out in thread 0009, blocked by 0000, retrying (60 sec)
が起きる場合、コマンドラインオプションに /DisableRubyAPI をつけていない
最終的に以下のコマンドで正常に SketchUp を起動することができた
$ WINEPREFIX=${HOME}/winedir/sketchup wine64 "${HOME}/winedir/sketchup/drive_c/Program Files (x86)/SketchUp/SketchUp 2015/SketchUp.exe" /DisableRubyAPI