Wine 3.0 Released が出たので、Ubuntu 派生の lubuntu 17.10 32bit 環境で Jw_cad v8.03a のインストール&起動の確認をしてみました。
Jw_cad v8.03a インストール時のエラーログで、err 出力は以下になります。
「wine Jw_win.exe」を実行して、Jw_cad v8.03a を起動します。 起動時のエラーログで、err 出力は以下になります。
ここで、Jw_cad v8.03a をインストール直後は、「メニュー」-「表示」-「Direct2D」 にチェックが入った状態です。
このチェックを外すと、作図領域の真っ黒が解消されます。
また、チェックを外した状態で、Jw_cad v8.03a を起動し直すと、上記エラーログの err(「err:wgl...」および「err:d3d...」)は、表示されなくなります。
このことから、Direct2D 関連の処理がうまく動いていないと思われます。
「CrossOver(Wine)を使って、Mac に Jw_cad v8 をインストールする。お試し」ページ参照。
Linux + Wine 3.0 では、winetricks から、ole32.dll、riched20.dll を追加することで、err 出力を減らすことができています。
CrossOver Mac でも ole32.dll および riched20.dll に相当するソフトウェアがあれば、追加でインストールことで、err 出力を減らせるかもしれませんね。
以下のエラーログが出力される場合は「wine Jw_win.exe」の実行が失敗します。
Mac で Linux や Windows を動かしたいなら、
Wine と Jw_cad のみをインストールする場合
Wine 3.0 Released インストール直後に Jw_cad v8.03a をインストールする。
手順は以下です。
- 下記 URL のインストール手順通りに、Wine 3.0 Released をインストール
https://wiki.winehq.org/Ubuntu - jww803a.exe をインストール
wine jww803a.exe を実行する
Jw_cad 関連のエラーログ
上記のように Jw_cad v8.03a をインストールしたときのエラーログの出力内容を確認します。Jw_cad v8.03a インストール時のエラーログで、err 出力は以下になります。
err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
err:ole:StdMarsharlImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
err:ole:get_local_server_stream Failed: 80004002
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
err:richedit:ReadStyleSheet skipping optional destination
err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
err:ole:StdMarsharlImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
err:ole:get_local_server_stream Failed: 80004002
err:mscoree:LoadLibraryShim error reading registry key for installroot
err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
err:richedit:ReadStyleSheet skipping optional destination
「wine Jw_win.exe」を実行して、Jw_cad v8.03a を起動します。 起動時のエラーログで、err 出力は以下になります。
err:ole:apartment_getclassobject DllGetClassObject returned error 0x80040111
err:ole:CoGetClassObject no class object {317d06e8-5f24-433d-bdf7-79ce68d8abc2} could be created for context 0x1
err:module:import_dll Library MFC42.DLL (which is needed by L"C:¥¥JWW¥¥common_lib.dll") not found
err:modlue:import_dll Library MFC42.DLL (which is needed by L"C:¥¥JWW¥common_lib_AP202.dll") not found
err:wgl:X11DRV_wglCreateContextAttribsARB Context creation failed (error 1)
err:d3d:wined3d_adapter_find_polyoffset_scale PolygonOffset scale factor detection failed,
using fallback value 2^23
err:ole:CoGetClassObject no class object {317d06e8-5f24-433d-bdf7-79ce68d8abc2} could be created for context 0x1
err:module:import_dll Library MFC42.DLL (which is needed by L"C:¥¥JWW¥¥common_lib.dll") not found
err:modlue:import_dll Library MFC42.DLL (which is needed by L"C:¥¥JWW¥common_lib_AP202.dll") not found
err:wgl:X11DRV_wglCreateContextAttribsARB Context creation failed (error 1)
err:d3d:wined3d_adapter_find_polyoffset_scale PolygonOffset scale factor detection failed,
using fallback value 2^23
winetrics で追加コンポーネントをインストールする場合
Wine 3.0 Released インストール後に、winetricks でフォント、ole32.dll、riched20.dll、mfc42.dll を追加でインストールします。この後に、Jw_cad v8.03a をインストールします。
インストール手順は以下になります。
- 下記 URL のインストール手順通りに、Wine 3.0 Released をインストール
https://wiki.winehq.org/Ubuntu - 「Synaptic パッケージマネージャ」から winetricks をインストール
- winetricks から、allfonts をインストール
これで windows インストーラーの文字化けがなくなる - winetricks から、 ole32 (ole32.dll)をインストール
これで ole 関連のエラーが解消される - winetricks から、riched30(riched20.dll)をインストールする
これで richedit 関連のエラーが解消される - winetricks から、mfc42 (mfc42.dll)をインストール
これで mfc42.dll が見つからないというエラーが解消される - jww803a.exe をインストール
Jw_cad 関連のエラーログ
上記のように Jw_cad v8.03a をインストールしたときのエラーログの出力内容を確認します。
Jw_cad v8.03a インストール時のエラーログで、err 出力はありません。
「wine Jw_win.exe」を実行して、Jw_cad v8.03a を起動します。 起動時のエラーログで、err 出力は以下になります。
Jw_cad v8.03a インストール時のエラーログで、err 出力はありません。
「wine Jw_win.exe」を実行して、Jw_cad v8.03a を起動します。 起動時のエラーログで、err 出力は以下になります。
err:wgl:X11DRV_wglCreateContextAttribsARB Context creation failed (error 1)
err:d3d:wined3d_adapter_find_polyoffset_scale PolygonOffset scale factor detection failed,
using fallback value 2^23
err:d3d:wined3d_adapter_find_polyoffset_scale PolygonOffset scale factor detection failed,
using fallback value 2^23
Jw_cad v8.03a の起動
Jw_cad v8.03a で、作図領域に図を描くか、図面を読み込んでみます。すると、Jw_cad の作図領域が真っ黒になります。設定で背景色を変更しても真っ黒状態は解消できないので、背景色だけの問題ではないようです。ここで、Jw_cad v8.03a をインストール直後は、「メニュー」-「表示」-「Direct2D」 にチェックが入った状態です。
このチェックを外すと、作図領域の真っ黒が解消されます。
また、チェックを外した状態で、Jw_cad v8.03a を起動し直すと、上記エラーログの err(「err:wgl...」および「err:d3d...」)は、表示されなくなります。
このことから、Direct2D 関連の処理がうまく動いていないと思われます。
CrossOver Mac でのヒント
Wine を利用した商用アプリである CrossOver Mac ですが、Jw_cad v8.03a インストール時には、上記と同様な err 出力がエラーログに表示されます。「CrossOver(Wine)を使って、Mac に Jw_cad v8 をインストールする。お試し」ページ参照。
Linux + Wine 3.0 では、winetricks から、ole32.dll、riched20.dll を追加することで、err 出力を減らすことができています。
CrossOver Mac でも ole32.dll および riched20.dll に相当するソフトウェアがあれば、追加でインストールことで、err 出力を減らせるかもしれませんね。
その他 Jw_cad 関連のエラーログ
常にではないが、たまに見かけるエラー
err:ntdll:RtlpWaitForCriticalSection section 0x7bce49c0 "loader.c: loader_section" wait timed out in thread 0027, blocked by 0026, retrying (60 sec)
以下のエラーログが出力される場合は「wine Jw_win.exe」の実行が失敗します。
err:winediag:nodrv_CreateWindow Application Tried to create a window, but no driver could be loaded.
err:winediag:nodrv_CreateWindow The explorer process failed to start
err:winediag:nodrv_CreateWindow The explorer process failed to start
Mac で Linux や Windows を動かしたいなら、