oakes / SolidOak

An IDE for Rust
https://sekao.net/solidoak/
The Unlicense
893 stars 60 forks source link

Cann't build SolidOak with rustc-1.15.0 #63

Closed o01eg closed 7 years ago

o01eg commented 7 years ago

It built with rustc-1.14 but after upgrate I get error:

$ cargo build --release --verbose
       Fresh pkg-config v0.3.8
       Fresh rustc-serialize v0.3.19
       Fresh libc v0.2.15
       Fresh c_vec v1.0.12
       Fresh bitflags v0.3.3
       Fresh libc v0.1.12
   Compiling solidoak v0.1.3 (file:///tmp/SolidOak)
       Fresh neovim-rs v0.1.0 (https://github.com/oakes/neovim-rs#61d61015)
       Fresh gcc v0.3.35
     Running `/tmp/SolidOak/target/release/build/solidoak-105501f62ce91171/build-script-build`
       Fresh glib-sys v0.2.1
       Fresh cairo-sys-rs v0.2.1
       Fresh gobject-sys v0.2.1
       Fresh pango-sys v0.2.1
       Fresh gio-sys v0.2.1
       Fresh atk-sys v0.2.1
       Fresh gdk-pixbuf-sys v0.2.1
       Fresh glib v0.0.7
       Fresh gdk-sys v0.2.1
       Fresh pango v0.0.6
       Fresh cairo-rs v0.0.7
       Fresh gtk-sys v0.2.1 (https://github.com/oakes/gtk#4d6325be)
       Fresh gdk v0.2.0
       Fresh gtk v0.0.6 (https://github.com/oakes/gtk#4d6325be)
     Running `rustc --crate-name solidoak src/main.rs --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=d027e3fbf39bb3c0 -C extra-filename=-d027e3fbf39bb3c0 --out-dir /tmp/SolidOak/target/release/deps -L dependency=/tmp/SolidOak/target/release/deps --extern neovim=/tmp/SolidOak/target/release/deps/libneovim-63b4a5a9627f69a5.rlib --extern gdk=/tmp/SolidOak/target/release/deps/libgdk-a8d5f2c55fe44fd5.rlib --extern glib=/tmp/SolidOak/target/release/deps/libglib-f78bd29dbb2abf6f.rlib --extern gtk=/tmp/SolidOak/target/release/deps/libgtk-8c97b5da4e45162b.rlib --extern rustc_serialize=/tmp/SolidOak/target/release/deps/librustc_serialize-9e77695dd1427d99.rlib --extern libc=/tmp/SolidOak/target/release/deps/liblibc-5f8d828b47082caa.rlib -L /mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib -L /mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/.deps/usr/lib -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/tmp/SolidOak/target/release/build/gtk-sys-364a846e4c5d162c/out -L native=/usr/lib64`
error: linking with `x86_64-pc-linux-gnu-gcc` failed: exit code: 1
  |
  = note: "x86_64-pc-linux-gnu-gcc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib" "/tmp/SolidOak/target/release/deps/solidoak-d027e3fbf39bb3c0.0.o" "-o" "/tmp/SolidOak/target/release/deps/solidoak-d027e3fbf39bb3c0" "-Wl,--gc-sections" "-pie" "-Wl,-O1" "-nodefaultlibs" "-L" "/tmp/SolidOak/target/release/deps" "-L" "/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib" "-L" "/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/.deps/usr/lib" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/usr/lib64" "-L" "/tmp/SolidOak/target/release/build/gtk-sys-364a846e4c5d162c/out" "-L" "/usr/lib64" "-L" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "/tmp/SolidOak/target/release/deps/libgtk-8c97b5da4e45162b.rlib" "/tmp/SolidOak/target/release/deps/libpango-055fdd573440e976.rlib" "/tmp/SolidOak/target/release/deps/libgdk-a8d5f2c55fe44fd5.rlib" "/tmp/SolidOak/target/release/deps/libneovim-63b4a5a9627f69a5.rlib" "/tmp/SolidOak/target/release/deps/liblibc-5f8d828b47082caa.rlib" "/tmp/SolidOak/target/release/deps/libcairo-594f97a33bd6515c.rlib" "/tmp/SolidOak/target/release/deps/libc_vec-c14fcb9c0a16a2a7.rlib" "/tmp/SolidOak/target/release/deps/libglib-f78bd29dbb2abf6f.rlib" "/tmp/SolidOak/target/release/deps/libgtk_sys-5b17c923dba29348.rlib" "/tmp/SolidOak/target/release/deps/libgdk_sys-9223286d42563c9c.rlib" "/tmp/SolidOak/target/release/deps/libcairo_sys-f4399e3e841b7db2.rlib" "/tmp/SolidOak/target/release/deps/libpango_sys-38158f2ee7602b38.rlib" "/tmp/SolidOak/target/release/deps/libgdk_pixbuf_sys-29ebd82d76d50229.rlib" "/tmp/SolidOak/target/release/deps/libatk_sys-2f084c483ab047e7.rlib" "/tmp/SolidOak/target/release/deps/libgio_sys-33e2893e75c51075.rlib" "/tmp/SolidOak/target/release/deps/libgobject_sys-4e3267daa88612e7.rlib" "/tmp/SolidOak/target/release/deps/libglib_sys-2b53c1d2944f8dba.rlib" "/tmp/SolidOak/target/release/deps/libbitflags-56398aa7a661adb6.rlib" "/tmp/SolidOak/target/release/deps/liblibc-c2668eb07a902d7f.rlib" "/tmp/SolidOak/target/release/deps/librustc_serialize-9e77695dd1427d99.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/librand-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libcollections-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/liballoc_jemalloc-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libstd_unicode-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libcore-d71e67e7.rlib" "/usr/lib64/rust-1.15.0/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-d71e67e7.rlib" "-l" "nvim" "-l" "util" "-l" "util" "-l" "gtk-3" "-l" "gdk-3" "-l" "pangocairo-1.0" "-l" "pango-1.0" "-l" "atk-1.0" "-l" "cairo-gobject" "-l" "cairo" "-l" "gdk_pixbuf-2.0" "-l" "gio-2.0" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "vte-2.91" "-l" "z" "-l" "gnutls" "-l" "gdk-3" "-l" "pangocairo-1.0" "-l" "pango-1.0" "-l" "gdk_pixbuf-2.0" "-l" "cairo-gobject" "-l" "cairo" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "cairo" "-l" "pango-1.0" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "gdk_pixbuf-2.0" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "atk-1.0" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "gio-2.0" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "gobject-2.0" "-l" "glib-2.0" "-l" "glib-2.0" "-l" "c" "-l" "m" "-l" "dl" "-l" "pthread" "-l" "gcc_s" "-l" "pthread" "-l" "c" "-l" "m" "-l" "rt" "-l" "util"
  = note: /mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(eval.c.o): In function `f_serverstart':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/eval.c:14925: undefined reference to `uv_strerror'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(eval.c.o): In function `f_mkdir':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/eval.c:12634: undefined reference to `uv_strerror'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(eval.c.o): In function `f_msgpackparse':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/eval.c:13327: undefined reference to `msgpack_unpacker_new'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/eval.c:13351: undefined reference to `msgpack_unpacker_next'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(eval.c.o): In function `msgpack_unpacked_destroy':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/../.deps/usr/include/msgpack/unpack.h:256: undefined reference to `msgpack_zone_free'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(eval.c.o): In function `f_msgpackparse':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/eval.c:13384: undefined reference to `msgpack_unpacker_free'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(eval.c.o): In function `msgpack_unpacker_reserve_buffer':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/../.deps/usr/include/msgpack/unpack.h:218: undefined reference to `msgpack_unpacker_expand_buffer'
...
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/tui/input.c:48: undefined reference to `uv_mutex_destroy'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/tui/input.c:49: undefined reference to `uv_cond_destroy'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/tui/input.c:52: undefined reference to `termkey_destroy'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(libuv_process.c.o): In function `libuv_process_spawn':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/event/libuv_process.c:50: undefined reference to `uv_spawn'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/event/libuv_process.c:51: undefined reference to `uv_strerror'
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib/libnvim.a(libuv_process.c.o): In function `libuv_process_close':
/mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/src/nvim/event/libuv_process.c:62: undefined reference to `uv_close'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

error: aborting due to previous error

error: Could not compile `solidoak`.

Caused by:
  process didn't exit successfully: `rustc --crate-name solidoak src/main.rs --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=d027e3fbf39bb3c0 -C extra-filename=-d027e3fbf39bb3c0 --out-dir /tmp/SolidOak/target/release/deps -L dependency=/tmp/SolidOak/target/release/deps --extern neovim=/tmp/SolidOak/target/release/deps/libneovim-63b4a5a9627f69a5.rlib --extern gdk=/tmp/SolidOak/target/release/deps/libgdk-a8d5f2c55fe44fd5.rlib --extern glib=/tmp/SolidOak/target/release/deps/libglib-f78bd29dbb2abf6f.rlib --extern gtk=/tmp/SolidOak/target/release/deps/libgtk-8c97b5da4e45162b.rlib --extern rustc_serialize=/tmp/SolidOak/target/release/deps/librustc_serialize-9e77695dd1427d99.rlib --extern libc=/tmp/SolidOak/target/release/deps/liblibc-5f8d828b47082caa.rlib -L /mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/build/lib -L /mnt/other/home/o01eg/.cargo/git/checkouts/neovim-rs-d2da26a4d9159b47/61d6101/neovim/.deps/usr/lib -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/usr/lib64 -L native=/tmp/SolidOak/target/release/build/gtk-sys-364a846e4c5d162c/out -L native=/usr/lib64` (exit code: 101)
oakes commented 7 years ago

I can't reproduce this with 1.15.1. Can you run cargo update and then build it again?

o01eg commented 7 years ago

I've just got same error with 1.15.1.

oakes commented 7 years ago

Did you run cargo update?

oakes commented 7 years ago

Oops, I actually am still using 1.14, my bad! I'll look into this.

oakes commented 7 years ago

Hmm, I installed 1.15.1 and it builds fine for me on OS X. What OS are you on?

o01eg commented 7 years ago

I use Gentoo Linux AMD64.

o01eg commented 7 years ago

I suppose it skip libuv and other neovim dependencies but cann't say why.

oakes commented 7 years ago

Please pull the latest commit and let me know if it builds for you now.

o01eg commented 7 years ago

Yes, it successfully built with rust-1.16.0 but failed with dev channel.