Mtasa-blue: CEF on Wine

Created on 18 Jun 2019  Â·  5Comments  Â·  Source: multitheftauto/mtasa-blue

Describe the bug

CEF does not work on Wine as expected.

To reproduce

  1. Run start webbrowser
  2. Open the webbrowser.
  3. Nothing appears in place of the MTA website

Version

Multi Theft Auto v1.5.6-release-18664

Additional context

You will receive the following warnings the Wine (Windows) console:

0177:err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files\\MTA San Andreas 1.5\\MTA\\CEF\\CEFLauncher_DLL.dll") not found
0177:err:module:import_dll Library CEFLauncher_DLL.dll (which is needed by L"C:\\Program Files\\MTA San Andreas 1.5\\MTA\\CEF\\CEFLauncher.exe") not found
0177:err:module:LdrInitializeThunk Importing dlls for L"C:\\Program Files\\MTA San Andreas 1.5\\MTA\\CEF\\CEFLauncher.exe" failed, status c0000135

You must COPY the following files from MTA to MTA/CEF to work around this issue:

cp libcef.dll chrome_elf.dll icudtl.dat natives_blob.bin v8_context_snapshot.bin snapshot_blob.bin CEF

Thank you to @TheNormalnij for discovering this solution.

Note that you do _not_ need snapshot_blob.bin from the MTA directory if you set WINARCH=win32. This additional bin file is only required in x64.

Without the DLL files in the MTA/ directory, the game WILL crash. This has been tested and is reproducible. You can't test this without performing a game restart.

Without the DLL files in the CEF/ directory, the game will silently output an error to the Windows (Wine) console. Nothing will appear ingame. This can be tested by restarting the webbrowser resource.

Without the other .bin data files in the CEF/ directory, CEFLauncher will crash, but the game will not. Nothing will appear in game. This can be tested by restarting the webbrowser resource. This also happens if you remove only the icudtl.dat. Partial removal of the .bin files have not been tested.

Roadmap

  • [ ] Determine if this is a bug in MTA or a bug in Wine.
  • If a bug in MTA: fix it.
  • If a bug in Wine:

    • File a Wine report.

    • Add a fix into our installer by simply symlinking these important files.

    • Pester @qaisjp to attempt a patch for Wine. (I suspect import_dll is missing out a directory to search in... but that would be way too "easy" of a solution.)

Screenshots

_Without the fix above_
image

_With the fix above_
image

_CEFLauncher crash without data files_
image

bug upstream

Most helpful comment

I think this issue can be closed. It is not relevant for wine-5.12 (Staging)

All 5 comments

I'm curious about why this issue is open. I thought MTA didn't support Wine, so that if MTA happens to run on Wine (after some tweaks or not) it's likely to be somewhat volatile?

I'm curious about why this issue is open. I thought MTA didn't support Wine, so that if MTA happens to run on Wine (after some tweaks or not) it's likely to be somewhat volatile?

qaisjp recently became interested in improving Wine support..

Wine support is not "officially supported" — i.e. fixing client issues on other platforms is not a priority.

This is also something that _seems_ easy to fix

I think this issue can be closed. It is not relevant for wine-5.12 (Staging)

Yay!!!!!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

CrosRoad95 picture CrosRoad95  Â·  3Comments

LosFaul picture LosFaul  Â·  3Comments

rk-r picture rk-r  Â·  4Comments

StifflersMom picture StifflersMom  Â·  4Comments

ALw7sH picture ALw7sH  Â·  3Comments