Like promised some time ago, short overview about self-building MinimalChess 0.2 on Ubuntu Linux. Below is compilation using MS .NET Core, notes are selective composition from general .NET Core Linux instructions at: https://docs.microsoft.com/en-us/dotnet ... tall/linux and Ubuntu Linux specific .NET Core installations instructions at: https://docs.microsoft.com/en-us/dotnet ... nux-ubuntu
Code: Select all
$ wget https://packages.microsoft.com/config/ubuntu/20.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
# Here I go for 3.1 core version explicitly, not 5.0 to verify compatibility with 3.1
$ sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-3.1
$ git clone https://github.com/lithander/MinimalChessEngine.git
$ cd MinimalChessEngine/
$ dotnet build
Welcome to .NET Core 3.1!
---------------------
SDK Version: 3.1.406
...
snipped
...
--------------------------------------------------------------------------------------
Microsoft (R) Build Engine version 16.7.2+b60ddb6f4 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
Determining projects to restore...
Restored /some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj (in 153 ms).
Restored /some_folder/MinimalChessEngine/MinimalChessEngine/MinimalChessEngine.csproj (in 144 ms).
Restored /some_filder/MinimalChessEngine/MinimalChessBoard/MinimalChessBoard.csproj (in 1 ms).
Board.cs(92,13): warning CS0164: This label has not been referenced [/some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj]
Move.cs(34,13): warning CS0164: This label has not been referenced [/some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj]
Notation.cs(61,13): warning CS0164: This label has not been referenced [/some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj]
MinimalChess -> /some_folder/MinimalChessEngine/MinimalChess/bin/Debug/netcoreapp3.1/MinimalChess.dll
MinimalChessBoard -> /some_folder/MinimalChessEngine/MinimalChessBoard/bin/Debug/netcoreapp3.1/MinimalChessBoard.dll
MinimalChessEngine -> /some_folder/MinimalChessEngine/MinimalChessEngine/bin/Debug/netcoreapp3.1/MinimalChessEngine.dll
Build succeeded.
Board.cs(92,13): warning CS0164: This label has not been referenced [/some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj]
Move.cs(34,13): warning CS0164: This label has not been referenced [/some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj]
Notation.cs(61,13): warning CS0164: This label has not been referenced [/some_folder/MinimalChessEngine/MinimalChess/MinimalChess.csproj]
3 Warning(s)
0 Error(s)
Time Elapsed 00:00:03.97
This is apparently a debug build, from my understanding the architecture-independent release build can be done with
Around 10 days ago I also did make an attempt of compiling MCE 0.1 with Mono (https://www.mono-project.com/), that I presumed would succeed, as you mentioned that you have catered for maximum compatibility by using .NET Core 3.1. However, my experience with .NET is non-existant and I did not succeed with pure Mono, as running xbuild on project solution files gave:$ dotnet build -c Release
and msbuild:./MinimalChessEngine/MinimalChessEngine/MinimalChessEngine.csproj: error : ./MinimalChessEngine/MinimalChessEngine/MinimalChessEngine.csproj: The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the MSBuild 2003 format, please add xmlns="http://schemas.microsoft.com/developer/msbuild/2003" to the <Project> element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MSBuild 2003 format
I plan to use MCE 0.2 release build to run some games against my pet engine at the end of next week, current observations from bunch of 10s+0 games with MCE 0.2 debug build:/usr/lib/mono/msbuild/Current/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(234,5): error NETSDK1004: Assets file '/some_folder/foreign/MinimalChessEngine/MinimalChessEngine/obj/project.assets.json' not found. Run a NuGet package restore to generate this file. [/some_folder/foreign/MinimalChessEngine/MinimalChessEngine/MinimalChessEngine.csproj]
- No timeout losses for MCE 0.2, ever!
- Reported PV every now and then includes texts "Estimate of 405ms EXCEEDS budget of 79ms. Quit!" and "WASTED 95ms on an aborted a search"
- As MCE 0.2 is now using alpha-beta, I would have thought it to score little better against Monchester's minimax at 10s+0 time control, but as I was using debug build, this observation should be taken with grain of salt.
EDIT: replaced one quote section with code section, so that https links inside the would not be shortened by forum software.