Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
Repo info
    Yong He
    @gabrik , we are trying to compile zenoh flow on Ubuntu 18.04 server, we can build zenoh flow runtime without issue. And also we could build fizz example. However, we cannot compile open CV examples (following your readme instruction). Wonder if you have similar problem during your experiment process:
    I guess this is opencv installation problem, but we did not encounter any opencv installation issues.
    You may give us some hints. we are trying to reproduce your demo today
    Hi @heyong4725, @gabrik is on holidays so he won’t be available for a while. Unfortunately, at the moment I only have at my disposal a Mac with the M1 chip (which proves to be an immense struggle in order to compile / link OpenCV) so I am unable to help. Tomorrow I will have access to a linux laptop and I will try to reproduce your error. Can you tell me which version of OpenCV you are running on the server?
    Gabriele Baldoni

    Hi @heyong4725 I guess it has to do with the version of opencv, the rust bindings are made to work with opencv 4.x, can you check the version that comes with Ubuntu 18.04? apt list --installed | grep libopencv-dev

    This is the version we have in Ubuntu 20.04:

    $ apt list --installed | grep libopencv-dev
    WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
    libopencv-dev/focal,now 4.2.0+dfsg-5 arm64 [installed]
    Bob Ding
    Hi @gabrik , when I run any of example like cargo build --example manual-source --example example-fizz --example example-buzz --example generic-sink , then I got error message ./target/release/runtime --graph-file zenoh-flow-examples/graphs/fizz_buzz_pipeline.yaml --runtime foo
    thread 'main' panicked at 'called Result::unwrap() on an Err value: LoadingError("Error when loading the library: ./target/debug/examples/libexample_fizz.so: undefined symbol: _ZN2cv3sfm11reconstructESt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS7_EERKNS_12_OutputArrayESC_RKNS_17_InputOutputArrayESC_b")', zenoh-flow/src/bin/runtime.rs:70:39
    note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
    The so file exists in right path defined in yaml.
    Gabriele Baldoni
    Hi @bobd988 it looks like an ABI error, can you try to rebuild the runtime and then the examples?
    Bob Ding

    @gabrik I tried again to clean and build project and then each example. Unfortunately I got same error. Second option I tried is to get latest code and build. There is error message Compiling opencv v0.53.1
    Compiling zenoh-flow-derive v0.0.1 (~/zenoh-flow-latest/zenoh-flow-derive)
    Compiling zenoh v0.5.0-dev (https://github.com/eclipse-zenoh/zenoh.git?branch=master#f97c9bc2)
    error[E0433]: failed to resolve: use of undeclared type SharedMemoryAuthenticator
    --> ~/.cargo/git/checkouts/zenoh-cc237f2570fab813/f97c9bc/zenoh/src/net/transport/unicast/manager.rs:193:25
    193 | .insert(SharedMemoryAuthenticator::new().into());
    | ^^^^^^^^^^^^^^^^^^^^^^^^^ use of undeclared type SharedMemoryAuthenticator

    error: aborting due to previous error

    For more information about this error, try rustc --explain E0433.
    error: could not compile zenoh

    Enea Scioni
    @bobd988 I had the same was fixed in eclipse-zenoh/zenoh-flow#7
    Gabriele Baldoni
    Hi @bobd988, can you try with:
    git pull
    cargo clean
    cargo update
    cargo build --all-targets
    Bob Ding
    with latest pull and clean these above errors gone. I can run opencv with CUDA single runtime example successfully. When I run multi-runtime, for the first command, it gives error : (base) ./target/release/runtime --graph-file zenoh-flow-examples/graphs/dnn-object-detection-multi-runtime.yaml --runtime foo
    thread 'main' panicked at 'called Result::unwrap() on an Err value: ParsingError("while parsing a block collection, did not find expected '-' indicator at line 16 column 3")', zenoh-flow/src/bin/runtime.rs:46:82
    note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
    Aborted (core dumped)
    Gabriele Baldoni
    Hi @bobd988 it should be a syntax error in the yaml file.
    I have tested with the one that comes in the repository and it is working, I’m copying it here for your convienience:
    flow: DNNPipeline # it should have a id, from this we will have an Instance of the graph, UUID => flow
      - id : ObjectDetection # this should be unique in the graph
        uri: file://./target/release/examples/libobject_detection_dnn.so
          - id: Frame
            type: image
          - id: Frame
            type: image
          neural-network: /home/gabri/Workspace/experiments/yolov3-face.cfg
          network-weights: /home/gabri/Workspace/experiments/yolov3-wider_16000.weights
          network-classes: /home/gabri/Workspace/experiments/face_classes.txt
    sources: # sources can have only ONE output
      - id : Camera0
        uri: file://./target/release/examples/libcamera_source.so
          id: Frame
          type: image
          camera: /dev/video0
          resolution: 800x600
          fps: 24
    sinks: # sinks can have only ONE input
      - id : Window
        uri: file://./target/release/examples/libvideo_sink.so
          id: Frame
          type: image
    - from: Camera0.Frame
      to: ObjectDetection.Frame
    - from: ObjectDetection.Frame
      to: Window.Frame
      - id: Window
        runtime: foo
      - id: Camera0
        runtime: bar
      - id: ObjectDetection
        runtime: cuda
    bob ding
    thanks. this works

    I am trying to build and run in Jetson Xavier with Ubuntu18.04. Rust installed is 1.51.0. when I build runtime it gave following error . I have installed LLVM and clang-7. Is there any suggestions ? Compiling quote v1.0.9
    Compiling unicode-normalization v0.1.19
    error: failed to run custom build command for clang-sys v1.2.2

    Caused by:
    process didn't exit successfully: /home/nvidia/Public/zenoh-flow/target/release/build/clang-sys-a9cebc8f04ee71c6/build-script-build (exit code: 101)
    --- stderr
    thread 'main' panicked at 'called Result::unwrap() on an Err value: "couldn\'t find any valid shared libraries matching: [\'libclang.so\', \'libclang-*.so\'], set the LIBCLANG_PATH environment variable to a path where one of these files can be found (invalid: [])"', /home/nvidia/.cargo/registry/src/github.com-1ecc6299db9ec823/clang-sys-1.2.2/build/dynamic.rs:211:45
    note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
    warning: build failed, waiting for other jobs to finish...
    error: build failed

    bob ding
    in Xavier I got it fixed by uninstall clang related packages and then re-install with sudo apg-get install clang libclang-dev.
    Gabriele Baldoni
    Hi @bobd988_gitlab , great that you solved, we do not have any Jetson powered SBC to test it, so we were trying to virtualize one.
    Thanks for sharing the solution!