Qapla Chess

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

Mangar
Posts: 67
Joined: Thu Jul 08, 2010 9:16 am

Qapla Chess

Post by Mangar »

Hi,

since some time I am back developing a new Engine: Qapla, that now came out in Version 0.4.0. I also ported our old Engine, Spike, so that it is now compiled with a modern C++ Compiler (Clang) and a bit faster than the original Version 1.4.0. Qapla is open source, Spike keeps closed source, its newes version is 1.4.2 and there are binaries for Windows, Linux and Mac (ARM). I believe that Nalimov tablebases are no longer working in Spike, I don´t have them any more and was not able to test my port (large change to adopt to modern c++).

Qapla 0.4.0 has the same "principles" as Spike, my first goal to create a new engine better than Spike without using algoirthms not available (or not know by myself) those days. This is done now, Qapla 0.4.0 is stronger than Spike 1.4.2 (that playes identically to Spike 1.4, just a bit faster).

Additionally, I´ve built a cli chess tournament manager that is great for uci engine developers. Becide "normal" features you´ll know from tools like cutechess it offers storing, extending and continuing tournaments. It also directly includes SPRT as well as two optimization algorithms for UCI engine parameters: CLOP and SPSA.

A Chess GUI is available that bases on this tournament manager and that is compatible in Tournament and SPSA files so you can build tournaments via. gui store them and then let them run in the cli version.

GUI and tournament manager are deidately made for engine developers, I think they are the best (locally running) tools for Engine Development currently available - thats why I made them and I like to use them myself.

Everything is avaliable for Windows, Linux and Mac-OS (beside Spike) open source:

https://github.com/Mangar2/Qapla
https://github.com/Mangar2/Spike
https://github.com/Mangar2/qapla-chess-gui
https://github.com/Mangar2/qapla-engine-tester
Mangar Spike Chess
User avatar
Steve Maughan
Posts: 1358
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Re: Qapla Chess

Post by Steve Maughan »

Hi Volker — brilliant! Spike was always one of my favorites to test. The tournament manager sounds extremely interesting. Many thanks!

— Steve
http://www.chessprogramming.net - Juggernaut & Maverick Chess Engine
User avatar
Roland Chastain
Posts: 729
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Qapla Chess

Post by Roland Chastain »

Looks awesome!

FYI, the compiled binary doesn't work here (Mageia 10):

Code: Select all

$ ./qapla-chess-gui-linux-x64
./qapla-chess-gui-linux-x64: error while loading shared libraries: libc++.so.1: cannot open shared object file: No such file or directory
And I don't manage to build from source.

Code: Select all

[25/284] Building CXX object CMakeFiles/qapla.dir/i18n/deu-lang.cpp.o
FAILED: [code=1] CMakeFiles/qapla.dir/i18n/deu-lang.cpp.o 
/usr/bin/clang++  -I/home/roland/Applications/qapla-chess-gui-git/extern/glad/include -I/home/roland/Applications/qapla-chess-gui-git/extern/qapla-engine-tester/src -I/home/roland/Applications/qapla-chess-gui-git/src -I/home/roland/Applications/qapla-chess-gui-git/i18n -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/cloudproviders -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glycin-2 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/atk-1.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/fribidi -I/usr/include/libxml2 -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libmount -I/usr/include/uuid -I/usr/include/json-c -I/usr/include/blkid -I/usr/include/sysprof-6 -I/home/roland/Applications/qapla-chess-gui-git/extern/glfw/include -I/home/roland/Applications/qapla-chess-gui-git/extern/imgui -I/home/roland/Applications/qapla-chess-gui-git/extern/imgui/backends -I/home/roland/Applications/qapla-chess-gui-git/extern/httplib -Wall -Wextra -stdlib=libc++ -O3 -DNDEBUG -std=gnu++20 -MD -MT CMakeFiles/qapla.dir/i18n/deu-lang.cpp.o -MF CMakeFiles/qapla.dir/i18n/deu-lang.cpp.o.d -o CMakeFiles/qapla.dir/i18n/deu-lang.cpp.o -c /home/roland/Applications/qapla-chess-gui-git/i18n/deu-lang.cpp
In file included from /home/roland/Applications/qapla-chess-gui-git/i18n/deu-lang.cpp:1:
/home/roland/Applications/qapla-chess-gui-git/i18n/deu-lang.h:3:10: fatal error: 'cstdint' file not found
    3 | #include <cstdint>
      |          ^~~~~~~~~
1 error generated.
Already opened an issue. If someone has an idea...
Qui trop embrasse mal étreint.

Author of Eschecs, a simple UCI chess GUI written in Pascal.
User avatar
Roland Chastain
Posts: 729
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Qapla Chess

Post by Roland Chastain »

Build almost successful after installing two packages: lib64clang-devel and clang-tools-extra-devel.

Now there is a linking error:

Code: Select all

[254/255] Linking CXX executable qapla
FAILED: [code=1] qapla 
: && /usr/bin/clang++ -Wall -Wextra -stdlib=libc++ -O3 -DNDEBUG -Xlinker --dependency-file=CMakeFiles/qapla.dir/link.d CMakeFiles/qapla.dir/i18n/deu-lang.cpp.o CMakeFiles/qapla.dir/i18n/eng-lang.cpp.o CMakeFiles/qapla.dir/i18n/fra-lang.cpp.o CMakeFiles/qapla.dir/src/autosavable.cpp.o CMakeFiles/qapla.dir/src/background-renderer.cpp.o CMakeFiles/qapla.dir/src/board-window.cpp.o CMakeFiles/qapla.dir/src/board-workspace.cpp.o CMakeFiles/qapla.dir/src/callback-manager.cpp.o CMakeFiles/qapla.dir/src/chatbot/add-engines/chatbot-add-engines.cpp.o CMakeFiles/qapla.dir/src/chatbot/add-engines/chatbot-step-add-engines-welcome.cpp.o CMakeFiles/qapla.dir/src/chatbot/board/chatbot-board.cpp.o CMakeFiles/qapla.dir/src/chatbot/board/chatbot-step-board-finish.cpp.o CMakeFiles/qapla.dir/src/chatbot/board/chatbot-step-board-select.cpp.o CMakeFiles/qapla.dir/src/chatbot/board/chatbot-step-board-set-engines.cpp.o CMakeFiles/qapla.dir/src/chatbot/board/chatbot-step-board-time-control.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-choose-language.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-llm-chat.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-messages.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-remote-control.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-snackbar-capture.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-finish.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-global-settings.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-load-engine.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-option-list.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-select-engines.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-standard-tournament-result.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-configuration.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-continue-existing.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-load.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-menu.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-opening.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-pgn.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-start.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-step-tournament-stop-running.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-tournament.cpp.o CMakeFiles/qapla.dir/src/chatbot/chatbot-window.cpp.o CMakeFiles/qapla.dir/src/chatbot/epd/chatbot-epd.cpp.o CMakeFiles/qapla.dir/src/chatbot/epd/chatbot-step-epd-configuration.cpp.o CMakeFiles/qapla.dir/src/chatbot/epd/chatbot-step-epd-continue-existing.cpp.o CMakeFiles/qapla.dir/src/chatbot/epd/chatbot-step-epd-start.cpp.o CMakeFiles/qapla.dir/src/chatbot/epd/chatbot-step-epd-stop-running.cpp.o CMakeFiles/qapla.dir/src/chatbot/sprt/chatbot-sprt.cpp.o CMakeFiles/qapla.dir/src/chatbot/sprt/chatbot-step-sprt-configuration.cpp.o CMakeFiles/qapla.dir/src/chatbot/sprt/chatbot-step-sprt-select-gauntlet.cpp.o CMakeFiles/qapla.dir/src/chatbot/sprt/chatbot-step-sprt-tournament-result.cpp.o CMakeFiles/qapla.dir/src/chatbot/tutorial/chatbot-tutorial.cpp.o CMakeFiles/qapla.dir/src/clop-data.cpp.o CMakeFiles/qapla.dir/src/command-line.cpp.o CMakeFiles/qapla.dir/src/config-group-loader.cpp.o CMakeFiles/qapla.dir/src/configuration-window.cpp.o CMakeFiles/qapla.dir/src/configuration.cpp.o CMakeFiles/qapla.dir/src/data/chess-font.cpp.o CMakeFiles/qapla.dir/src/data/dark-wood-background.cpp.o CMakeFiles/qapla.dir/src/data/ibm-plex-mono-font.cpp.o CMakeFiles/qapla.dir/src/data/inter-variable.cpp.o CMakeFiles/qapla.dir/src/data/logo-data.cpp.o CMakeFiles/qapla.dir/src/engine-data.cpp.o CMakeFiles/qapla.dir/src/engine-setup-window.cpp.o CMakeFiles/qapla.dir/src/engine-test-window.cpp.o CMakeFiles/qapla.dir/src/engine-tests.cpp.o CMakeFiles/qapla.dir/src/engine-window.cpp.o CMakeFiles/qapla.dir/src/epd-data.cpp.o CMakeFiles/qapla.dir/src/epd-window.cpp.o CMakeFiles/qapla.dir/src/font.cpp.o CMakeFiles/qapla.dir/src/game-filter-data.cpp.o CMakeFiles/qapla.dir/src/game-filter-window.cpp.o CMakeFiles/qapla.dir/src/game-parser.cpp.o CMakeFiles/qapla.dir/src/game-record-manager.cpp.o CMakeFiles/qapla.dir/src/glad.c.o CMakeFiles/qapla.dir/src/horizontal-split-container.cpp.o CMakeFiles/qapla.dir/src/i18n.cpp.o CMakeFiles/qapla.dir/src/imgui-barchart.cpp.o CMakeFiles/qapla.dir/src/imgui-board-setup.cpp.o CMakeFiles/qapla.dir/src/imgui-board-tab-bar.cpp.o CMakeFiles/qapla.dir/src/imgui-board.cpp.o CMakeFiles/qapla.dir/src/imgui-button.cpp.o CMakeFiles/qapla.dir/src/imgui-causes-table.cpp.o CMakeFiles/qapla.dir/src/imgui-clock.cpp.o CMakeFiles/qapla.dir/src/imgui-controls.cpp.o CMakeFiles/qapla.dir/src/imgui-cut-paste.cpp.o CMakeFiles/qapla.dir/src/imgui-engine-global-settings.cpp.o CMakeFiles/qapla.dir/src/imgui-engine-list.cpp.o CMakeFiles/qapla.dir/src/imgui-engine-select.cpp.o CMakeFiles/qapla.dir/src/imgui-epd-configuration.cpp.o CMakeFiles/qapla.dir/src/imgui-frame-rate-limiter.cpp.o CMakeFiles/qapla.dir/src/imgui-game-list.cpp.o CMakeFiles/qapla.dir/src/imgui-helper/imgui-text-button.cpp.o CMakeFiles/qapla.dir/src/imgui-move-list.cpp.o CMakeFiles/qapla.dir/src/imgui-sprt-configuration.cpp.o CMakeFiles/qapla.dir/src/imgui-tab-bar.cpp.o CMakeFiles/qapla.dir/src/imgui-table.cpp.o CMakeFiles/qapla.dir/src/imgui-tournament-adjudication.cpp.o CMakeFiles/qapla.dir/src/imgui-tournament-configuration.cpp.o CMakeFiles/qapla.dir/src/imgui-tournament-opening.cpp.o CMakeFiles/qapla.dir/src/imgui-tournament-pgn.cpp.o CMakeFiles/qapla.dir/src/interactive-board-window.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-activity.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-app.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-clop.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-engines.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-epd.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-sprt.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-tournament.cpp.o CMakeFiles/qapla.dir/src/llm/actions/gui-action-types.cpp.o CMakeFiles/qapla.dir/src/llm/activity-watch.cpp.o CMakeFiles/qapla.dir/src/llm/api/llm-tool-api.cpp.o CMakeFiles/qapla.dir/src/llm/gui-tool-engine-management.cpp.o CMakeFiles/qapla.dir/src/llm/gui-tool-registry.cpp.o CMakeFiles/qapla.dir/src/llm/gui-tool-tournament.cpp.o CMakeFiles/qapla.dir/src/llm/llm-chat-controller.cpp.o CMakeFiles/qapla.dir/src/llm/llm-chat-integration.cpp.o CMakeFiles/qapla.dir/src/llm/llm-chat-logger.cpp.o CMakeFiles/qapla.dir/src/llm/llm-finetuning-writer.cpp.o CMakeFiles/qapla.dir/src/llm/lm-studio-client.cpp.o CMakeFiles/qapla.dir/src/llm/lm-studio-locator.cpp.o CMakeFiles/qapla.dir/src/llm/remote-control-integration.cpp.o CMakeFiles/qapla.dir/src/llm/remote-control-server.cpp.o CMakeFiles/qapla.dir/src/llm/tools/gui-tools-activity.cpp.o CMakeFiles/qapla.dir/src/llm/tools/gui-tools-app.cpp.o CMakeFiles/qapla.dir/src/llm/tools/gui-tools-clop.cpp.o CMakeFiles/qapla.dir/src/llm/tools/gui-tools-epd.cpp.o CMakeFiles/qapla.dir/src/llm/tools/gui-tools-sprt.cpp.o CMakeFiles/qapla.dir/src/llm/tools/gui-tools-tournament.cpp.o CMakeFiles/qapla.dir/src/os-dialogs-apple.cpp.o CMakeFiles/qapla.dir/src/os-dialogs-linux.cpp.o CMakeFiles/qapla.dir/src/os-dialogs-windows.cpp.o CMakeFiles/qapla.dir/src/os-helpers-apple.cpp.o CMakeFiles/qapla.dir/src/os-helpers.cpp.o CMakeFiles/qapla.dir/src/pgn-auto-saver.cpp.o CMakeFiles/qapla.dir/src/qapla-chess-gui.cpp.o CMakeFiles/qapla.dir/src/snackbar.cpp.o CMakeFiles/qapla.dir/src/sprt-tournament-data.cpp.o CMakeFiles/qapla.dir/src/sprt-tournament-window.cpp.o CMakeFiles/qapla.dir/src/table-filter.cpp.o CMakeFiles/qapla.dir/src/table-index.cpp.o CMakeFiles/qapla.dir/src/test-system/epd-chatbot-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/llm-app-tool-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/llm-chat-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/regression-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/sprt-tournament-chatbot/sprt-tournament-chatbot-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/sprt-tournament-chatbot/sprt-tournament-step-actions.cpp.o CMakeFiles/qapla.dir/src/test-system/sprt-tournament-chatbot/sprt-tournament-test-helpers.cpp.o CMakeFiles/qapla.dir/src/test-system/test-environment.cpp.o CMakeFiles/qapla.dir/src/test-system/test-manager.cpp.o CMakeFiles/qapla.dir/src/test-system/tournament-chatbot/tournament-chatbot-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/tournament-chatbot/tournament-step-actions.cpp.o CMakeFiles/qapla.dir/src/test-system/tournament-chatbot/tournament-test-helpers.cpp.o CMakeFiles/qapla.dir/src/test-system/tutorial-test/board-window/tutorial-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/tutorial-test/engine-setup/tutorial-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/tutorial-test/epd/tutorial-tests.cpp.o CMakeFiles/qapla.dir/src/test-system/tutorial-test/tournament/tutorial-tests.cpp.o CMakeFiles/qapla.dir/src/time-control-window.cpp.o CMakeFiles/qapla.dir/src/tournament-config-sections.cpp.o CMakeFiles/qapla.dir/src/tournament-data.cpp.o CMakeFiles/qapla.dir/src/tournament-result-incremental.cpp.o CMakeFiles/qapla.dir/src/tournament-result-view.cpp.o CMakeFiles/qapla.dir/src/tournament-window.cpp.o CMakeFiles/qapla.dir/src/translation-key.cpp.o CMakeFiles/qapla.dir/src/translation-normalizer.cpp.o CMakeFiles/qapla.dir/src/tutorial.cpp.o CMakeFiles/qapla.dir/src/ui-thread-watch.cpp.o CMakeFiles/qapla.dir/src/ui-update-queue.cpp.o CMakeFiles/qapla.dir/src/vertical-split-container.cpp.o CMakeFiles/qapla.dir/src/viewer-board-window.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/base-logger.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/file-helper.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/ini-file.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/logger.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/markdown-output.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/os-tools.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/table-format.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/base-elements/time-control.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/chess-game/game-record.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/chess-game/move-record.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/cli/app-runner.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/cli/engine-settings-helper.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/cli/input-handler.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/cli/qapla-settings.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/cli/settings-definitions.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/cli/settings-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/clop/clop-engine-selection.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/clop/clop-model.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/clop/clop-optimizer.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/config/adjudication-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/config/engine-global-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/config/opening-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/config/pgn-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-adapter.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-capabilities.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-capability.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-config-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-parameter-bounds.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-process.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-worker-factory.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/engine-worker.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/run-header-logger.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/uci-adpater.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/uci-option.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-handling/winboard-adapter.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-tester/engine-report.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-tester/engine-test-controller.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-tester/engine-test-functions.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/engine-tester/test-tournament.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/epd/epd-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/epd/epd-test.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/adjudication-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/compute-task.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/game-context.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/game-manager-pool.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/game-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/game-state.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/pair-tournament.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/player-context.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/game-manager/tournament-result.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/json/json_pretty_print.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/json/json_value.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/json/json_value_array.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/json/json_value_object.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/job-scheduler.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/mcp-background-tools.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/mcp-converter.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/mcp-engine-tool.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/mcp-message-channel.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/mcp-schema-builder.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/mcp-server.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/mcp/settings-reporter.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/opening/epd-reader.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/opening/fen-parser.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/opening/opening-parser.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/opening/pgn-io.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/opening/pgn-save.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/opening/pgn-tokenizer.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/perft/perft.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/bitboardmasks.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/board.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/hashconstants.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/magics.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/movegenerator.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/piecesignature.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/qapla-engine/pst.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/sprt/fastchess-sprt.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/sprt/sprt-calculation.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/sprt/sprt-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/sprt/sprt-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/sprt/sprt-tournament-file.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/spsa/spsa-optimizer.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/system-test/system-test-manager.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/tournament/tournament-config.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/tournament/tournament-file.cpp.o CMakeFiles/qapla.dir/extern/qapla-engine-tester/src/tournament/tournament.cpp.o -o qapla  extern/glfw/src/libglfw3.a  libimgui.a  /usr/lib64/libOpenGL.so  /usr/lib64/libGLX.so  /usr/lib64/libGLU.so  -lgtk-3  -lgdk-3  -lpangocairo-1.0  -lpango-1.0  -lharfbuzz  -lz  -latk-1.0  -lcairo-gobject  -lcairo  -lgdk_pixbuf-2.0  -lgio-2.0  -lgobject-2.0  -lglib-2.0  -ldl  -lpthread  /usr/lib64/librt.a  -lm  -ldl && :
/usr/bin/ld: skipping incompatible /lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /usr/lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /usr/lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: cannot find libc++.so.1: file in wrong format
/usr/bin/ld: skipping incompatible /lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /usr/lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /lib/libc++.so.1 when searching for libc++.so.1
/usr/bin/ld: skipping incompatible /usr/lib/libc++.so.1 when searching for libc++.so.1
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
Qui trop embrasse mal étreint.

Author of Eschecs, a simple UCI chess GUI written in Pascal.
Mangar
Posts: 67
Joined: Thu Jul 08, 2010 9:16 am

Re: Qapla Chess

Post by Mangar »

Thank you for the info. Please try again, I replaced the binary with a glibc2.34 linked version and statically linked the c++ libraries. I hope it will work now (my linux version is too new).
Mangar Spike Chess
mar
Posts: 2969
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Qapla Chess

Post by mar »

Hi, thanks a lot for this.

I'll definitely give your SPSA a try; had a custom in-engine implementation, didn't work well (either bugs or wrong hyperparameters).

I also fixed some UCI conformance problems in my engine thanks to your Qapla GUI (great to see ImGui powering a Chess GUI btw).

I have to say it's very impressive, with a lot of advanced and very powerful features, definitely one of the most interesting recent GUIs out there.
User avatar
Roland Chastain
Posts: 729
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Qapla Chess

Post by Roland Chastain »

Mangar wrote: Mon Aug 31, 2026 4:46 pm Please try again, I replaced the binary with a glibc2.34 linked version and statically linked the c++ libraries. I hope it will work now (my linux version is too new).
The new binary works. Thank you.

Code: Select all

$ ./qapla-chess-gui-linux-x64
No file found: /home/roland/.qapla-chess-gui/qapla-chess-gui.ini
No file found: /home/roland/.qapla-chess-gui/epd-result.qepd
OpenGL Renderer: Mesa Intel(R) UHD Graphics 600 (GLK 2)
OpenGL Version: 4.6 (Core Profile) Mesa 26.1.5
Normal mode - Adaptive frame rate: 16-64 FPS
No file found: /home/roland/.qapla-chess-gui/missing_translations.txt
Qui trop embrasse mal étreint.

Author of Eschecs, a simple UCI chess GUI written in Pascal.