Caeden117 / ChroMapper

GitHub repository for ChroMapper, the Unity-based map editor for Beat Saber.
https://cm.topc.at/dl
GNU General Public License v2.0
300 stars 87 forks source link

CML won't start on Arch/EndeavourOS amd64 #459

Closed polyzium closed 1 year ago

polyzium commented 1 year ago

ChroMapper version I have no idea.

Describe the Issue ChroMapper refuses to start due to an error.

Provide Screenshots or Videos N/A.

Steps to Reproduce

  1. Download the Linux binary from https://cm.topc.at/dl
  2. chmod +x CML-Linux
  3. Execute the binary in terminal and watch as the program crashes.

Expected Behavior Program starts normally.

Additional Context

Extracting ./ChroMapper_Data/Plugins/libStandaloneFileBrowser.so
[ERROR] FATAL UNHANDLED EXCEPTION: System.EntryPointNotFoundException: chmod assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) LinuxSpecific.chmod(string,int)
  at LinuxSpecific.Exit () [0x00017] in <7ad014c80160465dabc2c93d0162da09>:0 
  at Main.PerformUpdate (System.Int32 current, System.Int32 desired) [0x0052d] in <7ad014c80160465dabc2c93d0162da09>:0 
  at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_1 (System.Object state) [0x00000] in <e70d6e9587d64cb3abb4b3f99bbf5a0d>:0 
  at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context (System.Object state) [0x00007] in <e70d6e9587d64cb3abb4b3f99bbf5a0d>:0 
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00071] in <e70d6e9587d64cb3abb4b3f99bbf5a0d>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <e70d6e9587d64cb3abb4b3f99bbf5a0d>:0 
  at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00021] in <e70d6e9587d64cb3abb4b3f99bbf5a0d>:0 
  at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in <e70d6e9587d64cb3abb4b3f99bbf5a0d>:0
$ pacman -Q wine
wine 8.1-1
$ pacman -Q wine-mono
wine-mono 7.4.0-1
Top-Cat commented 1 year ago

Are you implying you're running this linux mono assembly under wine? That's not how that works

polyzium commented 1 year ago

No. I executed the binary directly, via ./ syntax. But then it said it needs Wine Mono and it did print Wine-specific debug messages, so I'm assuming this uses Winelib or something.

Top-Cat commented 1 year ago

It sounds like it was implicitly run with wine, run it with mono

polyzium commented 1 year ago

This seems to work. Thanks.