[INFO] updating cached repository https://github.com/NickDriscoll/fsa_server [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] e72442bb75f63e6280683d2a81d3208d45ff745d [INFO] testing NickDriscoll/fsa_server against 1.44.0 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNickDriscoll%2Ffsa_server" "/workspace/builds/worker-4/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/NickDriscoll/fsa_server on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/NickDriscoll/fsa_server [INFO] finished tweaking git repo https://github.com/NickDriscoll/fsa_server [INFO] tweaked toml for git repo https://github.com/NickDriscoll/fsa_server written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/NickDriscoll/fsa_server already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 4c19bf877d8a2be7a1ed44a9e61220a2bc7abb5aca0870ccddb1b51e71b93c3c [INFO] running `"docker" "start" "-a" "4c19bf877d8a2be7a1ed44a9e61220a2bc7abb5aca0870ccddb1b51e71b93c3c"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling sdl2-sys v0.31.0 (https://github.com/AngryLawyer/rust-sdl2#73514508) [INFO] [stderr] Compiling rand v0.4.3 [INFO] [stderr] Compiling num-iter v0.1.37 [INFO] [stderr] Compiling rand v0.3.22 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling sdl2 v0.31.0 (https://github.com/AngryLawyer/rust-sdl2#73514508) [INFO] [stderr] Compiling fsaserver v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/entity_manager.rs:13:29 [INFO] [stderr] | [INFO] [stderr] 13 | entities: HashMap>, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Entity` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/entity_manager.rs:26:43 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn add_entity(&mut self, entity: Box) -> u32 { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Entity` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/entity_manager.rs:32:44 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn get(&self, id: u32) -> Option<&Box> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Entity` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/entity_manager.rs:36:56 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn get_mut(&mut self, id: u32) -> Option<&mut Box> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Entity` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/entity_manager.rs:45:40 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn iter(&self) -> Values> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Entity` [INFO] [stderr] [INFO] [stderr] warning: unused import: `sdl2::image::LoadTexture` [INFO] [stderr] --> src/texture_manager.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use sdl2::image::LoadTexture; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `texture_manager` [INFO] [stderr] --> src/main.rs:79:6 [INFO] [stderr] | [INFO] [stderr] 79 | let texture_manager = TextureManager::new(&canvas); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_texture_manager` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `adobe_texture` [INFO] [stderr] --> src/main.rs:84:6 [INFO] [stderr] | [INFO] [stderr] 84 | let adobe_texture = texture_creator.load_texture("assets/adobe.png").unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adobe_texture` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n` [INFO] [stderr] --> src/network_manager.rs:97:8 [INFO] [stderr] | [INFO] [stderr] 97 | Ok(n) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/network_manager.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | Err(e) => { } [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `entity_type` [INFO] [stderr] --> src/level_parser.rs:77:11 [INFO] [stderr] | [INFO] [stderr] 77 | Some(entity_type) => { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_type` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `entities` [INFO] [stderr] --> src/level_parser.rs:50:25 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn load(path: &str, entities: &mut EntityManager) { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entities` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:92:6 [INFO] [stderr] | [INFO] [stderr] 92 | let mut keyboard_manager = init_keyboard(&command_emitter, player_ids); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `B` [INFO] [stderr] --> src/network_manager.rs:18:2 [INFO] [stderr] | [INFO] [stderr] 18 | B = 0x10, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `A` [INFO] [stderr] --> src/network_manager.rs:19:2 [INFO] [stderr] | [INFO] [stderr] 19 | A = 0x20 [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `bounding_box` [INFO] [stderr] --> src/prop.rs:15:2 [INFO] [stderr] | [INFO] [stderr] 15 | bounding_box: Rect, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/prop.rs:21:2 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new(t: Texture<'a>, p: Vector2, draw_box: Rect, e_type: EntityType) -> Prop<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LEVEL_DIRECTORY` [INFO] [stderr] --> src/level_parser.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | const LEVEL_DIRECTORY: &str = "levels/"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Building` [INFO] [stderr] --> src/level_parser.rs:15:2 [INFO] [stderr] | [INFO] [stderr] 15 | Building = 0x01 [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `resolve` [INFO] [stderr] --> src/level_parser.rs:19:2 [INFO] [stderr] | [INFO] [stderr] 19 | fn resolve(i: u8) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save` [INFO] [stderr] --> src/level_parser.rs:28:8 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn save(path: &str, entities: &EntityManager) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `load` [INFO] [stderr] --> src/level_parser.rs:50:8 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn load(path: &str, entities: &mut EntityManager) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get` [INFO] [stderr] --> src/entity_manager.rs:32:2 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn get(&self, id: u32) -> Option<&Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `clear` [INFO] [stderr] --> src/entity_manager.rs:40:2 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn clear(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `iter` [INFO] [stderr] --> src/entity_manager.rs:45:2 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn iter(&self) -> Values> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `texture_creator` [INFO] [stderr] --> src/texture_manager.rs:10:2 [INFO] [stderr] | [INFO] [stderr] 10 | texture_creator: TextureCreator, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `texture_map` [INFO] [stderr] --> src/texture_manager.rs:11:2 [INFO] [stderr] | [INFO] [stderr] 11 | texture_map: HashMap>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `next_id` [INFO] [stderr] --> src/texture_manager.rs:12:2 [INFO] [stderr] | [INFO] [stderr] 12 | next_id: u32 [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/player.rs:61:3 [INFO] [stderr] | [INFO] [stderr] 61 | canvas.fill_rect(rect::Rect::new(self.position.x as i32, self.position.y as i32, 25, 25)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/network_manager.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | stream.set_nonblocking(true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/prop.rs:43:3 [INFO] [stderr] | [INFO] [stderr] 43 | canvas.copy(&self.texture, self.drawing_box, self.destination_box); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/level_parser.rs:46:3 [INFO] [stderr] | [INFO] [stderr] 46 | level_file.write(&buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] error: linking with `cc` failed: exit code: 1 [INFO] [stderr] | [INFO] [stderr] = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.fsaserver.b22jkeeh-cgu.9.rcgu.o" "-o" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e" "/opt/rustwide/target/debug/deps/fsaserver-fc3b2334f717986e.1ryx0t750g8t9nt5.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/libbyteorder-8f47078aa83acbe9.rlib" "/opt/rustwide/target/debug/deps/libsdl2-e7a275f05cc077fe.rlib" "/opt/rustwide/target/debug/deps/librand-382c56b931d96b8f.rlib" "/opt/rustwide/target/debug/deps/librand-58d0d515fa3028e3.rlib" "/opt/rustwide/target/debug/deps/libsdl2_sys-38e2fd563828456d.rlib" "/opt/rustwide/target/debug/deps/libbitflags-717e7ed2379fc03d.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-1feaaa5f89c5098b.rlib" "/opt/rustwide/target/debug/deps/liblibc-3889bc2b1e3d26c9.rlib" "/opt/rustwide/target/debug/deps/libnum-566bb51deaa7d3e2.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-841a76e7535bc089.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-9a4e179bdd13bbbc.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-464541a8aadbc687.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-205127404fcba336.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-a657948fb7763780.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-4af901391177f653.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-9bdd51edf637d1e0.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-df9a9630b2ea2e1e.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-fddbfe63d5cc9339.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-dc1fcc6e43806791.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-e2f4bff19e00107e.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-a152d13c1d7ed405.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-d92b841792fc008d.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-a64c249515c023f5.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-57654524b3e40c00.rlib" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-72180f1527a726a2.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/1.44.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-990cc8f4a91a3ab4.rlib" "-Wl,-Bdynamic" "-lSDL2" "-lSDL2_image" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-ldl" "-lutil" [INFO] [stderr] = note: /usr/bin/ld: cannot find -lSDL2_image [INFO] [stderr] collect2: error: ld returned 1 exit status [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error; 32 warnings emitted [INFO] [stderr] [INFO] [stderr] error: could not compile `fsaserver`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "4c19bf877d8a2be7a1ed44a9e61220a2bc7abb5aca0870ccddb1b51e71b93c3c"` [INFO] running `"docker" "rm" "-f" "4c19bf877d8a2be7a1ed44a9e61220a2bc7abb5aca0870ccddb1b51e71b93c3c"` [INFO] [stdout] 4c19bf877d8a2be7a1ed44a9e61220a2bc7abb5aca0870ccddb1b51e71b93c3c