Skip to content
This repository was archived by the owner on Mar 24, 2022. It is now read-only.

New libclang dependency! #543

@Hoverbear

Description

@Hoverbear

Heads up! A recent change introduced a new libclang build time dependency. I had to add libclang after updating Vector from 0.6.1 to the master.

In 0.6.1 I did not need libclang so this seems like a new undocumented dependency and @iximeow said I should open an issue. :)

    Checking wabt v0.9.2
error: failed to run custom build command for `userfaultfd-sys v0.2.0`

Caused by:
  process didn't exit successfully: `/git/timberio/vector/target/debug/build/userfaultfd-sys-f6b2cf3cce5b4db1/build-script-build` (exit code: 101)
--- stderr
thread 'main' panicked at 'Unable to find libclang: "couldn\'t find any valid shared libraries matching: [\'libclang.so\', \'libclang-*.so\', \'libclang.so.*\'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found (invalid: [])"', /home/hoverbear/.cargo/registry/src/github.com-1ecc6299db9ec823/bindgen-0.51.1/src/lib.rs:1731:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

warning: build failed, waiting for other jobs to finish...
error: build failed

I found in this checkout: https://github.com/timberio/vector/tree/f13723d4a8d82c164150fa78e0167c9e92c334c3

After applying this diff:

vector on  wasm-engine [$!?] is 📦 v0.9.1 via 🦀 v1.43.0 via ❄️  impure 
❯ git diff
diff --git a/default.nix b/default.nix
index 03634999..77917307 100644
--- a/default.nix
+++ b/default.nix
@@ -32,7 +32,7 @@ pkgs.buildEnv {
         ref = "refs/heads/nixpkgs-unstable";
         rev = "f61b3e02c05d36c58cb5f5fc793c38df5a79e490";
       }) {}).wabt
-      llvmPackages.libclang
+      # llvmPackages.libclang
     ]  ++ stdenv.lib.optional stdenv.isDarwin [ Security libiconv ];
     passthru = {
         shellHook = ''
@@ -42,7 +42,7 @@ pkgs.buildEnv {
             export LC_ALL="en_US.UTF-8";
             export OPENSSL_DIR="${pkgs.openssl.dev}";
             export OPENSSL_LIB_DIR="${pkgs.openssl.out}/lib";
-            export LIBCLANG_PATH ="${pkgs.llvmPackages.libclang}/lib";
+            # export LIBCLANG_PATH ="${pkgs.llvmPackages.libclang}/lib";
         '';
         PROTOC="${pkgs.protobuf}/bin/protoc";
         PROTOC_INCLUDE="${pkgs.protobuf}/include";
@@ -50,6 +50,6 @@ pkgs.buildEnv {
         LC_ALL="en_US.UTF-8";
         OPENSSL_DIR="${pkgs.openssl.dev}";
         OPENSSL_LIB_DIR="${pkgs.openssl.out}/lib";
-        LIBCLANG_PATH ="${pkgs.llvmPackages.libclang}/lib";
+        # LIBCLANG_PATH ="${pkgs.llvmPackages.libclang}/lib";
     };
 }
diff --git a/shell.nix b/shell.nix
index f31d0171..17c971ac 100644
--- a/shell.nix
+++ b/shell.nix
@@ -10,5 +10,5 @@ pkgs.mkShell {
   buildInputs = [ (import ./default.nix { inherit pkgs; }) ];
   OPENSSL_DIR="${pkgs.openssl.dev}";
   OPENSSL_LIB_DIR="${pkgs.openssl.out}/lib";
-  LIBCLANG_PATH ="${pkgs.llvmPackages.libclang}/lib";
+  # LIBCLANG_PATH ="${pkgs.llvmPackages.libclang}/lib";
 }

If you checkout https://github.com/timberio/vector/tree/1d88625ce5c35708a42d612c7abc6b4087676f78 then run the same shell build, it'll work since 0.6.1 didn't need libclang. :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions