There is a console application on C #, on Windows everything is working fine, but there is a need to put this application on a server running Ubuntu Server 18.04 x86_64. After running the mono RHBot.exe following error is displayed:

 Unhandled Exception: System.DllNotFoundException: SQLite.Interop.dll at (wrapper managed-to-native) System.Data.SQLite.UnsafeNativeMethods:sqlite3_config_none (System.Data.SQLite.SQLiteConfigOpsEnum) at System.Data.SQLite.SQLite3.StaticIsInitialized () [0x0001c] in <226287aa71b9481b9dd405c36cfaba76>:0 at System.Data.SQLite.SQLiteLog.Initialize (System.String className) [0x00026] in <226287aa71b9481b9dd405c36cfaba76>:0 at System.Data.SQLite.SQLiteConnection..ctor (System.String connectionString, System.Boolean parseViaFramework) [0x00046] in <226287aa71b9481b9dd405c36cfaba76>:0 at System.Data.SQLite.SQLiteConnection..ctor (System.String connectionString) [0x00000] in <226287aa71b9481b9dd405c36cfaba76>:0 at (wrapper remoting-invoke-with-check) System.Data.SQLite.SQLiteConnection:.ctor (string) at VKBot.Program.Main (System.String[] args) [0x0006e] in <69f24e52cda4494abdf8dac4c5408e44>:0 [ERROR] FATAL UNHANDLED EXCEPTION: System.DllNotFoundException: SQLite.Interop.dll at (wrapper managed-to-native) System.Data.SQLite.UnsafeNativeMethods:sqlite3_config_none (System.Data.SQLite.SQLiteConfigOpsEnum) at System.Data.SQLite.SQLite3.StaticIsInitialized () [0x0001c] in <226287aa71b9481b9dd405c36cfaba76>:0 at System.Data.SQLite.SQLiteLog.Initialize (System.String className) [0x00026] in <226287aa71b9481b9dd405c36cfaba76>:0 at System.Data.SQLite.SQLiteConnection..ctor (System.String connectionString, System.Boolean parseViaFramework) [0x00046] in <226287aa71b9481b9dd405c36cfaba76>:0 at System.Data.SQLite.SQLiteConnection..ctor (System.String connectionString) [0x00000] in <226287aa71b9481b9dd405c36cfaba76>:0 at (wrapper remoting-invoke-with-check) System.Data.SQLite.SQLiteConnection:.ctor (string) at VKBot.Program.Main (System.String[] args) [0x0006e] in <69f24e52cda4494abdf8dac4c5408e44>:0 

Although SQLite.Interop.dll lies in the x86 and x64 folders. What to do?

  • Build an application as 32 bit, or vice versa, as 64 bit - the file format does not match - NewView
  • @NewView gives the same error - LazyTechwork
  • Path 1: climb in mono, with the exhaust of the Net version of the framework and build on Windows with the same Net. Path 2: transfer the source to mono and compile there. - NewView
  • @NewView here mono pastebin.com/mMC0k19N launch tracelog can help - LazyTechwork
  • Version sql build 32/64? Decide on the platform and carefully check everything for compliance. And yet it is easier to collect on mono, if there are errors, then along the way .. - NewView

1 answer 1

Alternatively, try running it on dotNet, which is under Ubuntu.

  • Do not tell me how to run? dotnet utsanovil and what's next? - LazyTechwork
  • If I remember correctly, then dotnet prog.exe - Alexey Petrodiy
  • It produces the following error: A fatal error was encountered. The library 'libhostpolicy.so' required to execute the application was not found in '/home/bot/bot/bin/Release/'. A fatal error was encountered. The library 'libhostpolicy.so' required to execute the application was not found in '/home/bot/bot/bin/Release/'. - LazyTechwork