@Tyrin.price run the command updpkgsums in the directory with the pkgbuild.
The main issue is that using master.tar.gz as source is sub-optimal and lead at this kind of issues
Git Clone URL: | https://aur.archlinux.org/lc0.git (read-only, click to copy) |
---|---|
Package Base: | lc0 |
Description: | UCI-compliant chess engine designed to play chess via neural network, specifically those of the LeelaChessZero project. |
Upstream URL: | https://lczero.org/ |
Keywords: | chess engine lc0 lczero leela neural-network uci |
Licenses: | GPL3 |
Submitter: | ivanmlerner |
Maintainer: | ivanmlerner |
Last Packager: | ivanmlerner |
Votes: | 4 |
Popularity: | 0.015998 |
First Submitted: | 2019-08-04 07:47 (UTC) |
Last Updated: | 2022-03-05 12:51 (UTC) |
@Tyrin.price run the command updpkgsums in the directory with the pkgbuild.
The main issue is that using master.tar.gz as source is sub-optimal and lead at this kind of issues
Anyone know how to get past this error?
==> Validating source files with sha256sums...
lc0 ... Passed
lc0-0.28.2.tar.gz ... Passed
lczero-common-master.tar.gz ... FAILED
weights_hanse-69722-vf2.gz ... Passed
==> ERROR: One or more files did not pass the validity check!
==> ERROR: Failure while downloading https://www.comp.nus.edu.sg/~sergio-v/t40/256x20/256x20-t40-1541.pb.gz.
I get the following when I try to install this package.
curl: (22) The requested URL returned error: 403
ERROR: Failure while downloading https://www.comp.nus.edu.sg/~sergio-v/t40/256x20/256x20-t40-1541.pb.gz
is this abandoned?
the checksums still don't match
Sorry for the delay, I cannot test this at the moment, can anyone confirm if it is working properly?
change line 24 - 27 of the PKGBUILD-file to match checksum of lczero-common-masters.tar.gz
md5sums=('8ef8809da2c627dd2472859b157bb408'
'4d2b78aa66b3f99d4cf8e8de0e9e6d6c'
'f0111da33207c6941ff06f268fba675f'
'SKIP')
It seems that lczero-common-masters.tar.gz changed a couple of days ago as the checksums don't match anymore.
Ok, so I was able to reproduce this problem. Make does require another package, but it is cblas, not blas. With this package and openblas installed I was able to get the error when linking lc0, but not liblc0_lib.so This looks like a problem upstream, and looking at the README it seems we need a git version to use openblas, as suggested by the example with raspberry pi. There is already an openblas git version of this package in the aur using this method.
Library libtensorflow_cc found: NO Found pkg-config: /usr/bin/pkg-config (1.6.3) Found CMake: /usr/bin/cmake (3.17.0) Appending CFLAGS from environment: '-march=native -mtune=native -O2 -pipe -fno-plt -flto' Appending LDFLAGS from environment: ['-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'] Appending CPPFLAGS from environment: '-D_FORTIFY_SOURCE=2' Appending LDFLAGS from environment: ['-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'] Run-time dependency accelerate found: NO (tried pkgconfig and cmake) Library mkl_rt found: NO Library mklml found: NO Library dnnl found: NO Library openblas.dll found: NO Library openblas found: YES Has header "openblas_config.h" : YES Program ispc found: YES (/usr/bin/ispc) Library OpenCL found: YES Run-time dependency opencl found: YES 2.2 Library cublas found: NO Library cudnn found: NO Library cudart found: NO Program nvcc found: NO Program /usr/local/cuda/bin/nvcc found: NO Program /opt/cuda/bin/nvcc found: NO Run-time dependency zlib found: YES 1.2.11 Run-time dependency GTest found: YES 1.8.1 Build targets in project: 8 Found ninja-1.10.0 at /usr/bin/ninja [120/128] Linking target lc0. FAILED: lc0 c++ -o lc0 'lc0@exe/winograd_transform.o' 'lc0@exe/src_main.cc.o' 'lc0@exe/src_utils_protomessage.cc.o' 'lc0@exe/src_engine.cc.o' 'lc0@exe/src_version.cc.o' 'lc0@exe/src_benchmark_backendbench.cc.o' 'lc0@exe/src_benchmark_benchmark.cc.o' 'lc0@exe/src_chess_bitboard.cc.o' 'lc0@exe/src_chess_board.cc.o' 'lc0@exe/src_chess_position.cc.o' 'lc0@exe/src_chess_uciloop.cc.o' 'lc0@exe/src_mcts_node.cc.o' 'lc0@exe/src_mcts_params.cc.o' 'lc0@exe/src_mcts_search.cc.o' 'lc0@exe/src_mcts_stoppers_factory.cc.o' 'lc0@exe/src_mcts_stoppers_stoppers.cc.o' 'lc0@exe/src_mcts_stoppers_timemgr.cc.o' 'lc0@exe/src_neural_cache.cc.o' 'lc0@exe/src_neural_encoder.cc.o' 'lc0@exe/src_neural_factory.cc.o' 'lc0@exe/src_neural_loader.cc.o' 'lc0@exe/src_neural_network_check.cc.o' 'lc0@exe/src_neural_network_demux.cc.o' 'lc0@exe/src_neural_network_legacy.cc.o' 'lc0@exe/src_neural_network_mux.cc.o' 'lc0@exe/src_neural_network_random.cc.o' 'lc0@exe/src_neural_network_rr.cc.o' 'lc0@exe/src_neural_writer.cc.o' 'lc0@exe/src_selfplay_game.cc.o' 'lc0@exe/src_selfplay_loop.cc.o' 'lc0@exe/src_selfplay_tournament.cc.o' 'lc0@exe/src_syzygy_syzygy.cc.o' 'lc0@exe/src_utils_commandline.cc.o' 'lc0@exe/src_utils_configfile.cc.o' 'lc0@exe/src_utils_esc_codes.cc.o' 'lc0@exe/src_utils_histogram.cc.o' 'lc0@exe/src_utils_logging.cc.o' 'lc0@exe/src_utils_optionsdict.cc.o' 'lc0@exe/src_utils_optionsparser.cc.o' 'lc0@exe/src_utils_random.cc.o' 'lc0@exe/src_utils_string.cc.o' 'lc0@exe/src_utils_transpose.cc.o' 'lc0@exe/src_utils_weights_adapter.cc.o' 'lc0@exe/src_utils_filesystem.posix.cc.o' 'lc0@exe/src_neural_blas_convolution1.cc.o' 'lc0@exe/src_neural_blas_fully_connected_layer.cc.o' 'lc0@exe/src_neural_blas_se_unit.cc.o' 'lc0@exe/src_neural_blas_network_blas.cc.o' 'lc0@exe/src_neural_blas_winograd_convolution3.cc.o' 'lc0@exe/src_neural_opencl_network_opencl.cc.o' 'lc0@exe/src_neural_opencl_OpenCL.cc.o' 'lc0@exe/src_neural_opencl_OpenCLTuner.cc.o' 'lc0@exe/src_neural_opencl_OpenCLBuffers.cc.o' 'lc0@exe/src_neural_shared_activation.cc.o' 'lc0@exe/src_neural_shared_winograd_filter.cc.o' -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -march=native -mtune=native -O2 -pipe -fno-plt -flto -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -pthread -Wl,--start-group /usr/lib/libopenblas.so /usr/lib/libOpenCL.so /usr/lib/libz.so -Wl,--end-group /usr/bin/ld: /tmp/lc0.wSG0qd.ltrans3.ltrans.o: in function `lczero::WinogradConvolution3::Forward(unsigned long, unsigned long, unsigned long, float const*, float const*, float*)': <artificial>:(.text+0x6b8): undefined reference to `cblas_sgemm' /usr/bin/ld: /tmp/lc0.wSG0qd.ltrans3.ltrans.o: in function `lczero::Convolution1::Forward(unsigned long, unsigned long, unsigned long, float const*, float const*, float*)': <artificial>:(.text+0x787): undefined reference to `cblas_sgemm' /usr/bin/ld: /tmp/lc0.wSG0qd.ltrans3.ltrans.o: in function `lczero::FullyConnectedLayer::Forward1D(unsigned long, unsigned long, unsigned long, float const*, float const*, float const*, bool, float*)': <artificial>:(.text+0x9b1): undefined reference to `cblas_sgemm' /usr/bin/ld: <artificial>:(.text+0xa8f): undefined reference to `cblas_sgemv' /usr/bin/ld: /tmp/lc0.wSG0qd.ltrans3.ltrans.o: in function `lczero::(anonymous namespace)::BlasComputation::ComputeBlocking()': <artificial>:(.text+0x2c98): undefined reference to `cblas_sdot' collect2: error: ld returned 1 exit status [121/128] Linking target liblc0_lib.so. FAILED: liblc0_lib.so c++ -o liblc0_lib.so 'lc0_lib@sha/winograd_transform.o' 'lc0_lib@sha/src_utils_protomessage.cc.o' 'lc0_lib@sha/src_engine.cc.o' 'lc0_lib@sha/src_version.cc.o' 'lc0_lib@sha/src_benchmark_backendbench.cc.o' 'lc0_lib@sha/src_benchmark_benchmark.cc.o' 'lc0_lib@sha/src_chess_bitboard.cc.o' 'lc0_lib@sha/src_chess_board.cc.o' 'lc0_lib@sha/src_chess_position.cc.o' 'lc0_lib@sha/src_chess_uciloop.cc.o' 'lc0_lib@sha/src_mcts_node.cc.o' 'lc0_lib@sha/src_mcts_params.cc.o' 'lc0_lib@sha/src_mcts_search.cc.o' 'lc0_lib@sha/src_mcts_stoppers_factory.cc.o' 'lc0_lib@sha/src_mcts_stoppers_stoppers.cc.o' 'lc0_lib@sha/src_mcts_stoppers_timemgr.cc.o' 'lc0_lib@sha/src_neural_cache.cc.o' 'lc0_lib@sha/src_neural_encoder.cc.o' 'lc0_lib@sha/src_neural_factory.cc.o' 'lc0_lib@sha/src_neural_loader.cc.o' 'lc0_lib@sha/src_neural_network_check.cc.o' 'lc0_lib@sha/src_neural_network_demux.cc.o' 'lc0_lib@sha/src_neural_network_legacy.cc.o' 'lc0_lib@sha/src_neural_network_mux.cc.o' 'lc0_lib@sha/src_neural_network_random.cc.o' 'lc0_lib@sha/src_neural_network_rr.cc.o' 'lc0_lib@sha/src_neural_writer.cc.o' 'lc0_lib@sha/src_selfplay_game.cc.o' 'lc0_lib@sha/src_selfplay_loop.cc.o' 'lc0_lib@sha/src_selfplay_tournament.cc.o' 'lc0_lib@sha/src_syzygy_syzygy.cc.o' 'lc0_lib@sha/src_utils_commandline.cc.o' 'lc0_lib@sha/src_utils_configfile.cc.o' 'lc0_lib@sha/src_utils_esc_codes.cc.o' 'lc0_lib@sha/src_utils_histogram.cc.o' 'lc0_lib@sha/src_utils_logging.cc.o' 'lc0_lib@sha/src_utils_optionsdict.cc.o' 'lc0_lib@sha/src_utils_optionsparser.cc.o' 'lc0_lib@sha/src_utils_random.cc.o' 'lc0_lib@sha/src_utils_string.cc.o' 'lc0_lib@sha/src_utils_transpose.cc.o' 'lc0_lib@sha/src_utils_weights_adapter.cc.o' 'lc0_lib@sha/src_utils_filesystem.posix.cc.o' 'lc0_lib@sha/src_neural_blas_convolution1.cc.o' 'lc0_lib@sha/src_neural_blas_fully_connected_layer.cc.o' 'lc0_lib@sha/src_neural_blas_se_unit.cc.o' 'lc0_lib@sha/src_neural_blas_network_blas.cc.o' 'lc0_lib@sha/src_neural_blas_winograd_convolution3.cc.o' 'lc0_lib@sha/src_neural_opencl_network_opencl.cc.o' 'lc0_lib@sha/src_neural_opencl_OpenCL.cc.o' 'lc0_lib@sha/src_neural_opencl_OpenCLTuner.cc.o' 'lc0_lib@sha/src_neural_opencl_OpenCLBuffers.cc.o' 'lc0_lib@sha/src_neural_shared_activation.cc.o' 'lc0_lib@sha/src_neural_shared_winograd_filter.cc.o' -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group -Wl,-soname,liblc0_lib.so -march=native -mtune=native -O2 -pipe -fno-plt -flto -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -pthread /usr/lib/libopenblas.so /usr/lib/libOpenCL.so /usr/lib/libz.so -Wl,--end-group /usr/bin/ld: /tmp/liblc0_lib.so.KhRIPQ.ltrans2.ltrans.o: in function `lczero::WinogradConvolution3::Sgemm(unsigned long, float const*, unsigned long, unsigned long)': <artificial>:(.text+0x3d7d): undefined reference to `cblas_sgemm' /usr/bin/ld: /tmp/liblc0_lib.so.KhRIPQ.ltrans3.ltrans.o: in function `lczero::FullyConnectedLayer::Forward0D(unsigned long, float const*, float const*)': <artificial>:(.text+0x9f0): undefined reference to `cblas_sdot' /usr/bin/ld: /tmp/liblc0_lib.so.KhRIPQ.ltrans3.ltrans.o: in function `lczero::FullyConnectedLayer::Forward1D(unsigned long, unsigned long, unsigned long, float const*, float const*, float const*, bool, float*)': <artificial>:(.text+0xa51): undefined reference to `cblas_sgemm' /usr/bin/ld: <artificial>:(.text+0xb2f): undefined reference to `cblas_sgemv' /usr/bin/ld: /tmp/liblc0_lib.so.KhRIPQ.ltrans3.ltrans.o: in function `lczero::Convolution1::Forward(unsigned long, unsigned long, unsigned long, float const*, float const*, float*)': <artificial>:(.text+0xeb7): undefined reference to `cblas_sgemm' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. ==> ERROR: A failure occurred in build(). Aborting...
Also make depends on blas not openblas
build depends on opencl-headers
I have only tested this package with OpenCL so far, feedback from CUDA and openblas for Nvidia and CPUs respectively would be appreciated.
EDIT: Openblas not working in the release version, use the git version here
Pinned Comments
ivanmlerner commented on 2019-08-04 18:25 (UTC) (edited on 2020-03-25 21:59 (UTC) by ivanmlerner)
I have only tested this package with OpenCL so far, feedback from CUDA and openblas for Nvidia and CPUs respectively would be appreciated.
EDIT: Openblas not working in the release version, use the git version here