lichess-org / external-engine

Using engines running outside of the browser on https://lichess.org/analysis
GNU General Public License v3.0
76 stars 22 forks source link

Error running `cargo run stockfish` within the `remote-uci` directory #3

Closed koskorya closed 2 years ago

koskorya commented 2 years ago

Whene executing cargo run stockfish within the remote-uci directory and RUST_BACKTRACE=full I get the following warnings and errors

warning: unused import: `ProtocolError`
 --> src/engine.rs:9:18
  |
9 | use crate::uci::{ProtocolError, UciIn, UciOption, UciOptionName, UciOut};
  |                  ^^^^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: field is never read: `variant`
  --> src/engine.rs:18:5
   |
18 |     variant: Variant,
   |     ^^^^^^^^^^^^^^^^
   |
   = note: `#[warn(dead_code)]` on by default

warning: field is never read: `pos`
  --> src/engine.rs:19:5
   |
19 |     pos: VariantPosition,
   |     ^^^^^^^^^^^^^^^^^^^^

warning: `remote-uci` (lib) generated 3 warnings
    Finished release [optimized] target(s) in 30.60s
     Running `target/release/remote-uci stockfish`
thread 'main' panicked at 'spawn engine: Os { code: 2, kind: NotFound, message: "No such file or directory" }', /Users/rkosko/Repos/external-engine/remote-uci/src/lib.rs:87:56
stack backtrace:
   0:        0x1024537b0 - std::backtrace_rs::backtrace::libunwind::trace::hdeda4600dd070bcc
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:        0x1024537b0 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8148713b4dab4e7
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:        0x1024537b0 - std::sys_common::backtrace::_print_fmt::haf0555383873bc65
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/sys_common/backtrace.rs:66:5
   3:        0x1024537b0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h1fed2dd6a97f3bed
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/sys_common/backtrace.rs:45:22
   4:        0x10246f958 - core::fmt::write::hb0e4304f3c645902
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/core/src/fmt/mod.rs:1196:17
   5:        0x10244e81c - std::io::Write::write_fmt::h5d1524415c342f9b
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/io/mod.rs:1654:15
   6:        0x102455060 - std::sys_common::backtrace::_print::h048609092df7cfde
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/sys_common/backtrace.rs:48:5
   7:        0x102455060 - std::sys_common::backtrace::print::h4efb3f2f5d6d6b21
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/sys_common/backtrace.rs:35:9
   8:        0x102455060 - std::panicking::default_hook::{{closure}}::ha90997e26eb3c9d7
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:295:22
   9:        0x102454d3c - std::panicking::default_hook::hb89340eaa54105a5
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:314:9
  10:        0x102455538 - std::panicking::rust_panic_with_hook::h1db23d4e5c129198
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:698:17
  11:        0x10245542c - std::panicking::begin_panic_handler::{{closure}}::h18e2e1878436e49e
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:588:13
  12:        0x102453c8c - std::sys_common::backtrace::__rust_end_short_backtrace::h146455e36557ba62
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/sys_common/backtrace.rs:138:18
  13:        0x102455184 - rust_begin_unwind
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:584:5
  14:        0x10248a374 - core::panicking::panic_fmt::hb6f3c1bd9d609721
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/core/src/panicking.rs:142:14
  15:        0x10248a418 - core::result::unwrap_failed::h2b21ee7518c0dc35
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/core/src/result.rs:1785:5
  16:        0x1022cbc3c - remote_uci::main::{{closure}}::h0e8cd6be5c0e29e3
  17:        0x1022e21a4 - tokio::park::thread::CachedParkThread::block_on::h1831e8f8b715e241
  18:        0x1022e23f8 - tokio::runtime::thread_pool::ThreadPool::block_on::h8fdb18da2558717c
  19:        0x1022ff5c4 - tokio::runtime::Runtime::block_on::h0bcab5cb5c7c396f
  20:        0x1022f4510 - remote_uci::main::h05678b5d29931c09
  21:        0x1022daf8c - std::sys_common::backtrace::__rust_begin_short_backtrace::h6c75583e673ad67b
  22:        0x1022ef044 - std::rt::lang_start::{{closure}}::ha82807876cc03ad9
  23:        0x102449fd0 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::hfc87a1b486ea6796
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/core/src/ops/function.rs:280:13
  24:        0x102449fd0 - std::panicking::try::do_call::h7dcb1e4efbfac5dc
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:492:40
  25:        0x102449fd0 - std::panicking::try::h4ee76056fd63c1cd
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:456:19
  26:        0x102449fd0 - std::panic::catch_unwind::hbd5e8ad01dd6a9ee
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panic.rs:137:14
  27:        0x102449fd0 - std::rt::lang_start_internal::{{closure}}::h67dd3aa83aa43833
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/rt.rs:128:48
  28:        0x102449fd0 - std::panicking::try::do_call::h5c2aca003eb2a1cb
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:492:40
  29:        0x102449fd0 - std::panicking::try::h22495619ddde9ed3
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:456:19
  30:        0x102449fd0 - std::panic::catch_unwind::h9c037ef19fbc6aba
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panic.rs:137:14
  31:        0x102449fd0 - std::rt::lang_start_internal::h609ce79df789091f
                               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/rt.rs:128:20
  32:        0x1022f45f0 - _main

I wasn't sure if I need to install the stockfish engine separately because it looks to be included in the src. Also I know this is alpha so just was dropping a note if you haven't seen this yet :)

PhilLecl commented 2 years ago

Looks like the issue is that Stockfish isn't installed.
The stockfish directory in this repo includes stuff for building Stockfish using docker, but you'll still need to set it up manually. It's probably easiest for you to just install Stockfish yourself and try again.

koskorya commented 2 years ago

ahh yup installing Stockfish separately does the trick!

Quintium commented 2 years ago

@koskorya How did you install Stockfish? Does it just need to be downloaded or placed somewhere in the directory? Because I get a similar error even after downloading Stockfish.