memcardrex
memcardrex copied to clipboard
Building on Linux fails: unable to find LibUsbDotNet
I'm using Pop!_OS (Ubuntu) 21.04 / hirsute. I've installed mono-devel
from the official website, following the instructions for Ubuntu 20.04 / focal. (Using the outdated packages in Ubuntu's default repos resulted in more errors.)
When running xbuild /property:TargetFrameworkVersion=v4.0
, I get the following errors:
[stratosphere:~/Downloads/PSX/memcardrex] unilock$ xbuild /property:TargetFrameworkVersion=v4.0
>>>> xbuild tool is deprecated and will be removed in future updates, use msbuild instead <<<<
XBuild Engine Version 14.0
Mono, Version 6.12.0.122
Copyright (C) 2005-2013 Various Mono authors
Build started 11/1/2021 2:14:29 PM.
__________________________________________________
/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln: warning : Don't know how to handle GlobalSection ExtensibilityGlobals, Ignoring.
Project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln" (default target(s)):
Target ValidateSolutionConfiguration:
Building solution configuration "Debug|Any CPU".
Target Build:
Project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj" (default target(s)):
Target PrepareForBuild:
Configuration: Debug Platform: AnyCPU
Target ResolveAssemblyReferences:
/usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : Reference 'LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL' not resolved
For searchpath {CandidateAssemblyFiles}
Warning: {CandidateAssemblyFiles} not supported currently
For searchpath {HintPathFromItem}
Considered ../packages/LibUsbDotNet.2.2.29/lib/net45/LibUsbDotNet.LibUsbDotNet.dll, but it does not exist.
For searchpath {TargetFrameworkDirectory}
Considered target framework dir /usr/lib/mono/4.0-api/, assembly named 'LibUsbDotNet.LibUsbDotNet' not found.
For searchpath {PkgConfig}
Considered LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL, but could not find in any pkg-config files.
For searchpath {GAC}
Considered LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL, but could not find in the GAC.
For searchpath {RawFileName}
Considered 'LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL' as a file, but the file does not exist
For searchpath bin/Debug/
Considered '/home/unilock/Downloads/PSX/memcardrex/MemcardRex/bin/Debug/LibUsbDotNet.LibUsbDotNet' as a file, but the file does not exist
Considered '/home/unilock/Downloads/PSX/memcardrex/MemcardRex/bin/Debug/LibUsbDotNet.LibUsbDotNet.exe' as a file, but the file does not exist
Considered '/home/unilock/Downloads/PSX/memcardrex/MemcardRex/bin/Debug/LibUsbDotNet.LibUsbDotNet.dll' as a file, but the file does not exist
Target GenerateSatelliteAssemblies:
No input files were specified for target GenerateSatelliteAssemblies, skipping.
Target _GenerateTargetFrameworkMonikerAttribute:
Skipping target "_GenerateTargetFrameworkMonikerAttribute" because its outputs are up-to-date.
Target CoreCompile:
Tool /usr/lib/mono/4.5/csc.exe execution started with arguments: /noconfig /debug:full /debug:portable /optimize- /out:obj/Debug/MemcardRex.exe /resource:obj/Debug/MemcardRex.AboutWindow.resources /resource:obj/Debug/MemcardRex.commentsWindow.resources /resource:obj/Debug/MemcardRex.compareWindow.resources /resource:obj/Debug/MemcardRex.cardReaderWindow.resources /resource:obj/Debug/MemcardRex.headerWindow.resources /resource:obj/Debug/MemcardRex.iconWindow.resources /resource:obj/Debug/MemcardRex.informationWindow.resources /resource:obj/Debug/MemcardRex.mainWindow.resources /resource:obj/Debug/MemcardRex.pluginsWindow.resources /resource:obj/Debug/MemcardRex.preferencesWindow.resources /resource:obj/Debug/MemcardRex.Properties.Resources.resources GUI/aboutWindow.cs GUI/aboutWindow.Designer.cs Hardware/CardLink.cs GUI/commentsWindow.cs GUI/commentsWindow.Designer.cs GUI/compareWindow.cs GUI/compareWindow.Designer.cs Hardware/DexDrive.cs GUI/cardReaderWindow.cs GUI/cardReaderWindow.designer.cs Extras/glassSupport.cs GUI/headerWindow.cs GUI/headerWindow.Designer.cs GUI/iconWindow.cs GUI/iconWindow.Designer.cs GUI/informationWindow.cs GUI/informationWindow.Designer.cs GUI/mainWindow.cs GUI/mainWindow.Designer.cs Hardware/MemCARDduino.cs GUI/pluginsWindow.cs GUI/pluginsWindow.Designer.cs GUI/preferencesWindow.cs GUI/preferencesWindow.Designer.cs Hardware/PS3MemCardAdaptor.cs Program.cs Properties/AssemblyInfo.cs Properties/Resources.Designer.cs xmlSettingsEditor.cs Properties/Settings.Designer.cs ps1card.cs rexPluginSystem.cs obj/Debug/.NETFramework,Version=v4.0.AssemblyAttribute.cs /target:winexe /win32icon:Resources/memcardrex.ico /define:"DEBUG;TRACE" /main:MemcardRex.Program /nostdlib /reference:/usr/lib/mono/4.0-api/Microsoft.CSharp.dll /reference:/usr/lib/mono/4.0-api/System.dll /reference:/usr/lib/mono/4.0-api/System.Data.dll /reference:/usr/lib/mono/gac/System.Deployment/4.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll /reference:/usr/lib/mono/4.0-api/System.Drawing.dll /reference:/usr/lib/mono/4.0-api/System.Windows.Forms.dll /reference:/usr/lib/mono/4.0-api/System.Xml.dll /reference:/usr/lib/mono/4.0-api/System.Core.dll /reference:/usr/lib/mono/4.0-api//mscorlib.dll /warn:4
Microsoft (R) Visual C# Compiler version 3.6.0-4.20224.5 (ec77c100)
Copyright (C) Microsoft Corporation. All rights reserved.
Hardware/PS3MemCardAdaptor.cs(5,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(6,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(39,16): error CS0246: The type or namespace name 'ErrorCode' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(29,33): error CS0246: The type or namespace name 'UsbDeviceFinder' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(31,17): error CS0246: The type or namespace name 'UsbDevice' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(32,17): error CS0246: The type or namespace name 'UsbEndpointReader' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(33,17): error CS0246: The type or namespace name 'UsbEndpointWriter' could not be found (are you missing a using directive or an assembly reference?)
Task "Csc" execution -- FAILED
Done building target "CoreCompile" in project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj".-- FAILED
Done building project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj".-- FAILED
Task "MSBuild" execution -- FAILED
Done building target "Build" in project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln".-- FAILED
Done building project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln".-- FAILED
Build FAILED.
Warnings:
/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln: warning : Don't know how to handle GlobalSection ExtensibilityGlobals, Ignoring.
/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln (default targets) ->
(Build target) ->
/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets (ResolveAssemblyReferences target) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.Common.targets: warning : Reference 'LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL' not resolved
Errors:
/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln (default targets) ->
(Build target) ->
/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj (default targets) ->
/usr/lib/mono/xbuild/14.0/bin/Microsoft.CSharp.targets (CoreCompile target) ->
Hardware/PS3MemCardAdaptor.cs(5,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(6,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(39,16): error CS0246: The type or namespace name 'ErrorCode' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(29,33): error CS0246: The type or namespace name 'UsbDeviceFinder' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(31,17): error CS0246: The type or namespace name 'UsbDevice' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(32,17): error CS0246: The type or namespace name 'UsbEndpointReader' could not be found (are you missing a using directive or an assembly reference?)
Hardware/PS3MemCardAdaptor.cs(33,17): error CS0246: The type or namespace name 'UsbEndpointWriter' could not be found (are you missing a using directive or an assembly reference?)
2 Warning(s)
7 Error(s)
Time Elapsed 00:00:00.8315000
Here's what msbuild
reports:
[stratosphere:~/Downloads/PSX/memcardrex] unilock$ msbuild /property:TargetFrameworkVersion=v4.0
Microsoft (R) Build Engine version 16.6.0 for Mono
Copyright (C) Microsoft Corporation. All rights reserved.
Building the projects in this solution one at a time. To enable parallel build, please add the "-m" switch.
Build started 11/1/2021 2:18:46 PM.
Project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln" on node 1 (default targets).
ValidateSolutionConfiguration:
Building solution configuration "Debug|Any CPU".
Project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln" (1) is building "/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj" (2) on node 1 (default targets).
ResolveAssemblyReferences:
Primary reference "LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL".
/usr/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(2101,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
For SearchPath "{HintPathFromItem}".
Considered "/home/unilock/Downloads/PSX/memcardrex/packages/LibUsbDotNet.2.2.29/lib/net45/LibUsbDotNet.LibUsbDotNet.dll", but it didn't exist.
For SearchPath "{TargetFrameworkDirectory}".
Considered "/usr/lib/mono/xbuild-frameworks/.NETFramework/v4.0/LibUsbDotNet.LibUsbDotNet.winmd", but it didn't exist.
Considered "/usr/lib/mono/xbuild-frameworks/.NETFramework/v4.0/LibUsbDotNet.LibUsbDotNet.dll", but it didn't exist.
Considered "/usr/lib/mono/xbuild-frameworks/.NETFramework/v4.0/LibUsbDotNet.LibUsbDotNet.exe", but it didn't exist.
Considered "/usr/lib/mono/4.0-api/LibUsbDotNet.LibUsbDotNet.winmd", but it didn't exist.
Considered "/usr/lib/mono/4.0-api/LibUsbDotNet.LibUsbDotNet.dll", but it didn't exist.
Considered "/usr/lib/mono/4.0-api/LibUsbDotNet.LibUsbDotNet.exe", but it didn't exist.
For SearchPath "{GAC}".
Considered "LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL", which was not found in the GAC.
For SearchPath "{RawFileName}".
Considered treating "LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL" as a file name, but it didn't exist.
For SearchPath "bin/Debug/".
Considered "bin/Debug/LibUsbDotNet.LibUsbDotNet.winmd", but it didn't exist.
Considered "bin/Debug/LibUsbDotNet.LibUsbDotNet.dll", but it didn't exist.
Considered "bin/Debug/LibUsbDotNet.LibUsbDotNet.exe", but it didn't exist.
CoreResGen:
No resources are out of date with respect to their source files. Skipping resource generation.
CoreCompile:
/usr/lib/mono/msbuild/Current/bin/Roslyn/csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE /main:MemcardRex.Program /highentropyva- /reference:/usr/lib/mono/4.0-api/Microsoft.CSharp.dll /reference:/usr/lib/mono/4.0-api/mscorlib.dll /reference:/usr/lib/mono/4.0-api/System.Core.dll /reference:/usr/lib/mono/4.0-api/System.Data.dll /reference:/usr/lib/mono/gac/System.Deployment/4.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll /reference:/usr/lib/mono/4.0-api/System.dll /reference:/usr/lib/mono/4.0-api/System.Drawing.dll /reference:/usr/lib/mono/4.0-api/System.Windows.Forms.dll /reference:/usr/lib/mono/4.0-api/System.Xml.dll /debug+ /debug:full /filealign:512 /optimize- /out:obj/Debug/MemcardRex.exe /resource:obj/Debug/MemcardRex.AboutWindow.resources /resource:obj/Debug/MemcardRex.commentsWindow.resources /resource:obj/Debug/MemcardRex.compareWindow.resources /resource:obj/Debug/MemcardRex.cardReaderWindow.resources /resource:obj/Debug/MemcardRex.headerWindow.resources /resource:obj/Debug/MemcardRex.iconWindow.resources /resource:obj/Debug/MemcardRex.informationWindow.resources /resource:obj/Debug/MemcardRex.mainWindow.resources /resource:obj/Debug/MemcardRex.pluginsWindow.resources /resource:obj/Debug/MemcardRex.preferencesWindow.resources /resource:obj/Debug/MemcardRex.Properties.Resources.resources /target:winexe /utf8output /win32icon:Resources/memcardrex.ico /win32manifest:app.manifest /langversion:7.3 GUI/aboutWindow.cs GUI/aboutWindow.Designer.cs Hardware/CardLink.cs GUI/commentsWindow.cs GUI/commentsWindow.Designer.cs GUI/compareWindow.cs GUI/compareWindow.Designer.cs Hardware/DexDrive.cs GUI/cardReaderWindow.cs GUI/cardReaderWindow.designer.cs Extras/glassSupport.cs GUI/headerWindow.cs GUI/headerWindow.Designer.cs GUI/iconWindow.cs GUI/iconWindow.Designer.cs GUI/informationWindow.cs GUI/informationWindow.Designer.cs GUI/mainWindow.cs GUI/mainWindow.Designer.cs Hardware/MemCARDduino.cs GUI/pluginsWindow.cs GUI/pluginsWindow.Designer.cs GUI/preferencesWindow.cs GUI/preferencesWindow.Designer.cs Hardware/PS3MemCardAdaptor.cs Program.cs Properties/AssemblyInfo.cs Properties/Resources.Designer.cs xmlSettingsEditor.cs Properties/Settings.Designer.cs ps1card.cs rexPluginSystem.cs "obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs"
Using shared compilation with compiler from directory: /usr/lib/mono/msbuild/Current/bin/Roslyn
Hardware/PS3MemCardAdaptor.cs(5,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(6,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(39,16): error CS0246: The type or namespace name 'ErrorCode' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(29,33): error CS0246: The type or namespace name 'UsbDeviceFinder' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(31,17): error CS0246: The type or namespace name 'UsbDevice' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(32,17): error CS0246: The type or namespace name 'UsbEndpointReader' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(33,17): error CS0246: The type or namespace name 'UsbEndpointWriter' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Done Building Project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj" (default targets) -- FAILED.
Done Building Project "/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln" (default targets) -- FAILED.
Build FAILED.
"/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln" (default target) (1) ->
"/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj" (default target) (2) ->
(ResolveAssemblyReferences target) ->
/usr/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(2101,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "LibUsbDotNet.LibUsbDotNet, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c677239abe1e02a9, processorArchitecture=MSIL". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
"/home/unilock/Downloads/PSX/memcardrex/MemcardRex.sln" (default target) (1) ->
"/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj" (default target) (2) ->
(CoreCompile target) ->
Hardware/PS3MemCardAdaptor.cs(5,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(6,7): error CS0246: The type or namespace name 'LibUsbDotNet' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(39,16): error CS0246: The type or namespace name 'ErrorCode' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(29,33): error CS0246: The type or namespace name 'UsbDeviceFinder' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(31,17): error CS0246: The type or namespace name 'UsbDevice' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(32,17): error CS0246: The type or namespace name 'UsbEndpointReader' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
Hardware/PS3MemCardAdaptor.cs(33,17): error CS0246: The type or namespace name 'UsbEndpointWriter' could not be found (are you missing a using directive or an assembly reference?) [/home/unilock/Downloads/PSX/memcardrex/MemcardRex/MemcardRex.csproj]
1 Warning(s)
7 Error(s)
Time Elapsed 00:00:01.19
Installing libusb-1.0-0-dev
did not help.
I fixed this by downloading the LibUsbDotNet NuGet package and extracting the contained lib
folder to <root of repository>/packages/LibUsbDotNet.2.2.29
. But I'm not sure how to fix this in a more sane manner.
BTW, to run on Linux, you have to run mono <root of repository>/MemcardRex/bin/Debug/MemcardRex.exe
.
Also, selecting the "Quit" button from within MemcardRex freezes the program. You then have to CTRL+C Mono. I guess one should only use the window's "X" button.
Im having no luck with this in wine, the arduino blinks once then the program locks. Fine in windows.
@L10N37 Don't run it in WINE. Compile it for Linux with mono
, xbuild
, and LibUsbDotNet as described above.
Compiling for macOS is beyond the scope of my knowledge, though it shouldn't differ too much from my rudimentary instructions.
@unilock Thank you for the guidelines, I could build the application under Linux, too. Maybe we can provide a script that fetches the required dependency off the Internet and unpacks it correctly. I can take care of that once I'm done with a pull-request.
EDIT: I just want also to underline that there is a GUI glitch (at least with KDE) which causes the "Untitled" tab after reading a PS memory card to stay "grey", as if no data were read. Just go to "File" -> "New". A new tab opens and magically the former one is also visible now.
Building on rpm
based distros (Fedora, OpenSUSE) works just fine for me after installing the default LibUSB package (libusb on Fedora; libusb-0_1, libusb-1_0 on OpenSUSE). I haven't tested building on deb
based distros as I don't have a machine running Debian or derivatives.
@unilock I've adapted your build instructions and put them into MONO.md. Thanks for the info!
I have a question on building Memcardrex on Linux. I wanted to try Visual Studio Code for Linux if I can use it to build since I had bad experiences with Mono. I installed C# extension for VS Code and .net Framework v6.0 that is available from the official Linux Mint repository, altough I am aware the latest is version 7.0 that I tried to add and configure manually but with no success. Does anyone has any hints on compiling this app on Linux using VS Code?