ul / kak-tree

Structural selections for Kakoune
The Unlicense
100 stars 10 forks source link

Build fails when Clojure parser is enabled #23

Closed adrusi closed 2 years ago

adrusi commented 3 years ago

It looks like there's a linker error when building with Clojure support, not sure if the issue is on the kak-tree end or with tree-sitter-clojure. Building with any language other than Clojure works fine.

  Installing kak-tree v0.1.0 (/tmp/kak-tree)
    Updating crates.io index
   Compiling libc v0.2.93
   Compiling autocfg v1.0.1
   Compiling proc-macro2 v1.0.26
   Compiling unicode-xid v0.2.1
   Compiling cfg-if v1.0.0
   Compiling syn v1.0.69
   Compiling slog v2.7.0
   Compiling serde_derive v1.0.125
   Compiling memchr v2.3.4
   Compiling serde v1.0.125
   Compiling lazy_static v1.4.0
   Compiling log v0.4.14
   Compiling crc32fast v1.2.1
   Compiling regex-syntax v0.6.23
   Compiling ryu v1.0.5
   Compiling once_cell v1.7.2
   Compiling arc-swap v1.2.0
   Compiling serde_json v1.0.64
   Compiling bitflags v1.2.1
   Compiling take_mut v0.2.2
   Compiling rle-decode-fast v1.0.1
   Compiling itoa v0.4.7
   Compiling crossbeam v0.2.12
   Compiling adler32 v1.2.0
   Compiling unicode-width v0.1.8
   Compiling vec_map v0.8.2
   Compiling either v1.6.1
   Compiling ansi_term v0.11.0
   Compiling strsim v0.8.0
   Compiling num-traits v0.2.14
   Compiling num-integer v0.1.44
   Compiling crossbeam-utils v0.8.3
   Compiling thread_local v1.1.3
   Compiling textwrap v0.11.0
   Compiling itertools v0.8.2
   Compiling aho-corasick v0.7.15
   Compiling slog-scope v4.4.0
   Compiling quote v1.0.9
   Compiling dirs-sys-next v0.1.2
   Compiling time v0.1.43
   Compiling atty v0.2.14
   Compiling log v0.3.9
   Compiling jobserver v0.1.21
   Compiling libflate v0.1.27
   Compiling dirs-next v2.0.0
   Compiling clap v2.33.3
   Compiling slog-stdlog v3.0.5
   Compiling crossbeam-channel v0.5.0
   Compiling regex v1.4.5
   Compiling cc v1.0.67
   Compiling term v0.7.0
   Compiling slog-async v2.6.0
   Compiling slog-kvfilter v0.7.0
   Compiling chrono v0.4.19
   Compiling tree-sitter v0.6.3
   Compiling kak-tree v0.1.0 (/tmp/kak-tree)
   Compiling trackable_derive v1.0.0
   Compiling slog-term v2.8.0
   Compiling trackable v1.2.0
   Compiling trackable v0.2.24
warning: In file included from vendor/tree-sitter-rust/src/parser.c:1:
warning: vendor/tree-sitter-rust/src/parser.c: In function ‘ts_lex_keywords’:
warning: vendor/tree-sitter-rust/src/tree_sitter/parser.h:131:8: warning: variable ‘eof’ set but not used [-Wunused-but-set-variable]
warning:   131 |   bool eof = false;             \
warning:       |        ^~~
warning: vendor/tree-sitter-rust/src/parser.c:4786:3: note: in expansion of macro ‘START_LEXER’
warning:  4786 |   START_LEXER();
warning:       |   ^~~~~~~~~~~
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_destroy’:
warning: vendor/tree-sitter-rust/src/scanner.c:12:54: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    12 | void tree_sitter_rust_external_scanner_destroy(void *p) {}
warning:       |                                                ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_reset’:
warning: vendor/tree-sitter-rust/src/scanner.c:13:52: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    13 | void tree_sitter_rust_external_scanner_reset(void *p) {}
warning:       |                                              ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_serialize’:
warning: vendor/tree-sitter-rust/src/scanner.c:14:60: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    14 | unsigned tree_sitter_rust_external_scanner_serialize(void *p, char *buffer) { return 0; }
warning:       |                                                      ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c:14:69: warning: unused parameter ‘buffer’ [-Wunused-parameter]
warning:    14 | unsigned tree_sitter_rust_external_scanner_serialize(void *p, char *buffer) { return 0; }
warning:       |                                                               ~~~~~~^~~~~~
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_deserialize’:
warning: vendor/tree-sitter-rust/src/scanner.c:15:58: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    15 | void tree_sitter_rust_external_scanner_deserialize(void *p, const char *b, unsigned n) {}
warning:       |                                                    ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c:15:73: warning: unused parameter ‘b’ [-Wunused-parameter]
warning:    15 | void tree_sitter_rust_external_scanner_deserialize(void *p, const char *b, unsigned n) {}
warning:       |                                                             ~~~~~~~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c:15:85: warning: unused parameter ‘n’ [-Wunused-parameter]
warning:    15 | void tree_sitter_rust_external_scanner_deserialize(void *p, const char *b, unsigned n) {}
warning:       |                                                                            ~~~~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_scan’:
warning: vendor/tree-sitter-rust/src/scanner.c:25:51: warning: unused parameter ‘payload’ [-Wunused-parameter]
warning:    25 | bool tree_sitter_rust_external_scanner_scan(void *payload, TSLexer *lexer,
warning:       |                                             ~~~~~~^~~~~~~
   Compiling sloggers v0.3.6
   Compiling toml v0.5.8
error: linking with `cc` failed: exit code: 1
  |
  = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-Wl,--eh-frame-hdr" "-L" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.0.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.1.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.10.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.11.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.12.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.13.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.14.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.15.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.2.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.3.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.4.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.5.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.6.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.7.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.8.rcgu.o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.9.rcgu.o" "-o" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd" "/tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.4ofns8yp5ufdmjr5.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs" "-L" "/tmp/kak-tree/target/release/deps" "-L" "/tmp/kak-tree/target/release/build/kak-tree-ab61f15e16d32ff4/out" "-L" "/tmp/kak-tree/target/release/build/tree-sitter-306936e9b8cc66eb/out" "-L" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "-Wl,--whole-archive" "-ltree_sitter_rust" "-Wl,--no-whole-archive" "/tmp/kak-tree/target/release/deps/libsloggers-1eeed2c6bd9a410e.rlib" "/tmp/kak-tree/target/release/deps/libslog_stdlog-5645424089bba576.rlib" "/tmp/kak-tree/target/release/deps/liblog-cee1a2d76e2c2040.rlib" "/tmp/kak-tree/target/release/deps/liblog-3217f079d39ad321.rlib" "/tmp/kak-tree/target/release/deps/libslog_scope-27523e7d6ae9f3f5.rlib" "/tmp/kak-tree/target/release/deps/libarc_swap-efd09bc77ce54347.rlib" "/tmp/kak-tree/target/release/deps/libslog_term-4a3068b01d4c8cc6.rlib" "/tmp/kak-tree/target/release/deps/libterm-dc165d97de4583d0.rlib" "/tmp/kak-tree/target/release/deps/libdirs_next-21910acbbce7f489.rlib" "/tmp/kak-tree/target/release/deps/libdirs_sys_next-0d62cf5325636b23.rlib" "/tmp/kak-tree/target/release/deps/libslog_kvfilter-79ce97abe554b79e.rlib" "/tmp/kak-tree/target/release/deps/libslog_async-43eca4efd6a2accf.rlib" "/tmp/kak-tree/target/release/deps/libthread_local-bb811fc8ce57121e.rlib" "/tmp/kak-tree/target/release/deps/libonce_cell-21e9da22f98e7d77.rlib" "/tmp/kak-tree/target/release/deps/libcrossbeam_channel-7a2069f71f26076e.rlib" "/tmp/kak-tree/target/release/deps/libcrossbeam_utils-c62ff02066b71b37.rlib" "/tmp/kak-tree/target/release/deps/liblazy_static-49b79ac062ddc731.rlib" "/tmp/kak-tree/target/release/deps/liblibflate-a0e3b73efdde4630.rlib" "/tmp/kak-tree/target/release/deps/libtake_mut-193d4ebcb9156139.rlib" "/tmp/kak-tree/target/release/deps/librle_decode_fast-6fcf494338ada9cb.rlib" "/tmp/kak-tree/target/release/deps/libcrc32fast-274d6f6356d94d49.rlib" "/tmp/kak-tree/target/release/deps/libcfg_if-b95e3d47d2a2d145.rlib" "/tmp/kak-tree/target/release/deps/libadler32-0ee79bcb36f70fa9.rlib" "/tmp/kak-tree/target/release/deps/libchrono-302881bbca6b1abe.rlib" "/tmp/kak-tree/target/release/deps/libnum_integer-2525a9e376d5a1b6.rlib" "/tmp/kak-tree/target/release/deps/libnum_traits-bd4102865d3c8970.rlib" "/tmp/kak-tree/target/release/deps/libtime-29ac76053d9df293.rlib" "/tmp/kak-tree/target/release/deps/libtrackable-6bb424b4fbf54565.rlib" "/tmp/kak-tree/target/release/deps/libtrackable-65fbadd61b6dbd0d.rlib" "/tmp/kak-tree/target/release/deps/libslog-c0caacfe6620a2ac.rlib" "/tmp/kak-tree/target/release/deps/libitertools-e85e3838ae2fd07b.rlib" "/tmp/kak-tree/target/release/deps/libeither-a362c5c541bcdacf.rlib" "/tmp/kak-tree/target/release/deps/libtree_sitter-5db51dddabd2d7fa.rlib" "/tmp/kak-tree/target/release/deps/libserde_json-80772460659655b2.rlib" "/tmp/kak-tree/target/release/deps/libryu-3fa383024d70cfd5.rlib" "/tmp/kak-tree/target/release/deps/libitoa-8be987539cea4b1a.rlib" "/tmp/kak-tree/target/release/deps/libregex-c77882308e7405a0.rlib" "/tmp/kak-tree/target/release/deps/libregex_syntax-7ee6b1ce20264869.rlib" "/tmp/kak-tree/target/release/deps/libaho_corasick-c173c70426dfa388.rlib" "/tmp/kak-tree/target/release/deps/libmemchr-181c467024449d26.rlib" "/tmp/kak-tree/target/release/deps/libtoml-292dd52216298da8.rlib" "/tmp/kak-tree/target/release/deps/libserde-29830bcbd37a4322.rlib" "/tmp/kak-tree/target/release/deps/libclap-f4ab859b9018ac7c.rlib" "/tmp/kak-tree/target/release/deps/libvec_map-c42ec140ccfeaea4.rlib" "/tmp/kak-tree/target/release/deps/libtextwrap-62842afc18504c5d.rlib" "/tmp/kak-tree/target/release/deps/libunicode_width-3b67f6fb85ed7051.rlib" "/tmp/kak-tree/target/release/deps/libstrsim-05739d31f55d9fad.rlib" "/tmp/kak-tree/target/release/deps/libbitflags-ba348557b137d58f.rlib" "/tmp/kak-tree/target/release/deps/libatty-5172cacccb0041c5.rlib" "/tmp/kak-tree/target/release/deps/liblibc-908b86b80da34306.rlib" "/tmp/kak-tree/target/release/deps/libansi_term-441f14aa2c239a15.rlib" "-Wl,--start-group" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-e12de7683a34c500.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-446a53c2e468675f.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-86fef9fb252a2d33.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-3bed9bfd30304751.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-0e38eeb474a7b386.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-a846ed547b824740.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-c9540f0a4fb9265d.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-7d2ca66c92c356eb.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-147e2c808f949493.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-bd2a4369506670e9.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-74bfdd0ce7d0ed48.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-6777f47f1c491841.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-b104f1790174f2be.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-db37898996f45c13.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-25b7435131fc4938.rlib" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-9d4b6f3c097e876e.rlib" "-Wl,--end-group" "/home/adrusi/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-3f953ad652ab829a.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc"
  = note: /usr/bin/ld: /tmp/kak-tree/target/release/deps/kak_tree-236aa2289bc214bd.kak_tree.athnaazl-cgu.5.rcgu.o: in function `kak_tree::main':
          kak_tree.athnaazl-cgu.5:(.text._ZN8kak_tree4main17hc00e256c4b715222E+0x6fb): undefined reference to `tree_sitter_clojure'
          /usr/bin/ld: kak_tree.athnaazl-cgu.5:(.text._ZN8kak_tree4main17hc00e256c4b715222E+0x2381): undefined reference to `tree_sitter_clojure'
          collect2: error: ld returned 1 exit status

error: aborting due to previous error

The following warnings were emitted during compilation:

warning: In file included from vendor/tree-sitter-rust/src/parser.c:1:
warning: vendor/tree-sitter-rust/src/parser.c: In function ‘ts_lex_keywords’:
warning: vendor/tree-sitter-rust/src/tree_sitter/parser.h:131:8: warning: variable ‘eof’ set but not used [-Wunused-but-set-variable]
warning:   131 |   bool eof = false;             \
warning:       |        ^~~
warning: vendor/tree-sitter-rust/src/parser.c:4786:3: note: in expansion of macro ‘START_LEXER’
warning:  4786 |   START_LEXER();
warning:       |   ^~~~~~~~~~~
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_destroy’:
warning: vendor/tree-sitter-rust/src/scanner.c:12:54: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    12 | void tree_sitter_rust_external_scanner_destroy(void *p) {}
warning:       |                                                ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_reset’:
warning: vendor/tree-sitter-rust/src/scanner.c:13:52: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    13 | void tree_sitter_rust_external_scanner_reset(void *p) {}
warning:       |                                              ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_serialize’:
warning: vendor/tree-sitter-rust/src/scanner.c:14:60: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    14 | unsigned tree_sitter_rust_external_scanner_serialize(void *p, char *buffer) { return 0; }
warning:       |                                                      ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c:14:69: warning: unused parameter ‘buffer’ [-Wunused-parameter]
warning:    14 | unsigned tree_sitter_rust_external_scanner_serialize(void *p, char *buffer) { return 0; }
warning:       |                                                               ~~~~~~^~~~~~
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_deserialize’:
warning: vendor/tree-sitter-rust/src/scanner.c:15:58: warning: unused parameter ‘p’ [-Wunused-parameter]
warning:    15 | void tree_sitter_rust_external_scanner_deserialize(void *p, const char *b, unsigned n) {}
warning:       |                                                    ~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c:15:73: warning: unused parameter ‘b’ [-Wunused-parameter]
warning:    15 | void tree_sitter_rust_external_scanner_deserialize(void *p, const char *b, unsigned n) {}
warning:       |                                                             ~~~~~~~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c:15:85: warning: unused parameter ‘n’ [-Wunused-parameter]
warning:    15 | void tree_sitter_rust_external_scanner_deserialize(void *p, const char *b, unsigned n) {}
warning:       |                                                                            ~~~~~~~~~^
warning: vendor/tree-sitter-rust/src/scanner.c: In function ‘tree_sitter_rust_external_scanner_scan’:
warning: vendor/tree-sitter-rust/src/scanner.c:25:51: warning: unused parameter ‘payload’ [-Wunused-parameter]
warning:    25 | bool tree_sitter_rust_external_scanner_scan(void *payload, TSLexer *lexer,
warning:       |                                             ~~~~~~^~~~~~~

error: failed to compile `kak-tree v0.1.0 (/tmp/kak-tree)`, intermediate artifacts can be found at `/tmp/kak-tree/target`

Caused by:
  could not compile `kak-tree`

To learn more, run the command again with --verbose.
jtrv commented 3 years ago

I also ran into the same issue

eko234 commented 3 years ago

same here.

ul commented 2 years ago

Should be fixed by #26, please feel free to re-open if it's not.