I'm trying to compile MojoPortal on Linux for MySQL for Mono. My aim is to be able to be able to create a web application that runs on both Windows and Linux servers using Microsoft technologies. I'm fully aware that MojoPortal hasn't supported Mono officially for years, but due to some... complicated circumstances, I can't just build my application in ASP.NET Mono or .NET Core directly. Nor can I just write the application in PHP or any other server-side technology that is proven to work on both platforms.
For this project, I'm using the latest stable version of MojoPortal obtained from the official GitHub repository.
I've gotten as far as fixing the majority of dependencies for the various projects. There doesn't appear to be any other errors in the program other than this one when I try to run it normally in Debug Mode:
/usr/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(5,5): Error MSB3073: The command "if "Debug" == "Release - SQLite" xcopy /s /y /d "/home/callum/Working/mojoportal/Web/data/sqlitedb/sqlite3.dll" "/home/callum/Working/mojoportal/Web/bin/"
if "Debug" == "Debug - SQLite" xcopy /s /y /d "/home/callum/Working/mojoportal/Web/data/sqlitedb/sqlite3.dll" "/home/callum/Working/mojoportal/Web/bin/"" exited with code 2. (MSB3073) (mojoPortal.Web)
Looking at it, it appears to be complaining about the SQLite packages, but I don't want to use SQLite; I want to use MySQL! I've been working my way through all of the various MySQL build modes, but nothing seems to be working. What should I do?
mojoPortal doesn't support running on Linux w/ mono anymore and hasn't for several years. That doesn't mean it will not work, just that the development team doesn't test or target Mono at all.
Make sure you are building against the MySQL data layer and not the sqlite layer. From there, be sure you aren't deploying the sqlite3.dll to your server. It could be that you are building against the MySQL data layer but have the sqlite3.dll in your files so Mono is trying to JIT build it.
Hope this helps,
Joe