Can you port this into .NET Core / Mono?
Opened this issue · 0 comments
Wohlstand commented
Hello!
I am a Linux user, and I trying to use the tool with Mono (on .NET Core runtime it won't start), and I getting the strenge error:
wohlstand@whl-pc-110l:~/Soft/midisplit-1.2.6/bin$ mono MidiSplit.exe ku.mid
Reading midi file: ku.mid
Output midi file: ku-split.mid
System.IO.FileNotFoundException: Could not load file or assembly or one of its dependencies.
File name: 'System.ComponentModel.Composition, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
at MidiSplit.MidiSplit.ReadMidiFile (System.String filePath) [0x00006] in <c42c8ff7bdf1423aa94822157b06db6b>:0
at MidiSplit.MidiSplit.Main (System.String[] args) [0x00377] in <c42c8ff7bdf1423aa94822157b06db6b>:0
File exist, and I placed it into current directory, however, it tells like file is not exist.
This error happens even I trying to pass the absolute path:
wohlstand@whl-pc-110l:~/Soft/midisplit-1.2.6/bin$ mono MidiSplit.exe '/home/wohlstand/Soft/midisplit-1.2.6/bin/ku.mid'
Reading midi file: /home/wohlstand/Soft/midisplit-1.2.6/bin/ku.mid
Output midi file: /home/wohlstand/Soft/midisplit-1.2.6/bin/ku-split.mid
System.IO.FileNotFoundException: Could not load file or assembly or one of its dependencies.
File name: 'System.ComponentModel.Composition, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
at MidiSplit.MidiSplit.ReadMidiFile (System.String filePath) [0x00006] in <c42c8ff7bdf1423aa94822157b06db6b>:0
at MidiSplit.MidiSplit.Main (System.String[] args) [0x00377] in <c42c8ff7bdf1423aa94822157b06db6b>:0
On a quick hand, I tried to compile the project locally with .NET Core, however, it was failed, because the project/solution needs a slight tune to make it being built.
I think, you should produce your tool with .NET Core to make it work everywhere (include Linux and macOS). Especially because it's a console app that doesn't use complex platform dependent GUI libraries and APIs.