Giter Club home page Giter Club logo

kimera's Introduction

Hello there, I’m Luigi! πŸ‘‹

Website | Twitter | LinkedIn

I’m a Computer Engineer and Radio Amateur (PU2SPY). Here you can find all my Open-Source projects. I write code for SDRs, Raspberry Pi, Machine Learning, Parallel Computing, Satellites, Python, C++, and Golang. Check out my main projects:

kimera's People

Contributors

4xx avatar luigifcruz avatar patriciogonzalezvivo avatar phillipdavidstearns avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kimera's Issues

Cmake compile error - install TARGETS given no RUNTIME DESTINATION for executable target

Not sure how to resolve this error
Command:
cmake -DCMAKE_BUILD_TYPE=Release .. --trace
Output:
CHES Debug|RelWithDebInfo ) /home/ubuntu/.local/lib/python3.5/site-packages/pybind11/share/cmake/pybind11/pybind11Tools.cmake(205): pybind11_strip(${target_name} ) /home/ubuntu/.local/lib/python3.5/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake(383): if(CMAKE_STRIP ) /home/ubuntu/.local/lib/python3.5/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake(384): if(APPLE ) /home/ubuntu/.local/lib/python3.5/site-packages/pybind11/share/cmake/pybind11/pybind11Common.cmake(388): add_custom_command(TARGET ${target_name} POST_BUILD COMMAND ${CMAKE_STRIP} ${x_opt} $<TARGET_FILE:${target_name}> ) /home/ubuntu/.local/lib/python3.5/site-packages/pybind11/share/cmake/pybind11/pybind11Tools.cmake(208): if(MSVC ) /home/ubuntu/.local/lib/python3.5/site-packages/pybind11/share/cmake/pybind11/pybind11Tools.cmake(212): if(ARG_OPT_SIZE ) /home/ubuntu/kimera/python/CMakeLists.txt(16): set_target_properties(python PROPERTIES OUTPUT_NAME kimera ) /home/ubuntu/kimera/python/CMakeLists.txt(17): target_link_libraries(python PRIVATE kimera ) /home/ubuntu/kimera/CMakeLists.txt(47): add_subdirectory(apps ) /home/ubuntu/kimera/apps/CMakeLists.txt(1): add_subdirectory(tunnel ) /home/ubuntu/kimera/apps/tunnel/CMakeLists.txt(1): project(tunnel ) /home/ubuntu/kimera/apps/tunnel/CMakeLists.txt(3): file(GLOB SOURCE_LIST CONFIGURE_DEPENDS *.cc ) /home/ubuntu/kimera/apps/tunnel/CMakeLists.txt(5): add_executable(tunnel ${SOURCE_LIST} ) /home/ubuntu/kimera/apps/tunnel/CMakeLists.txt(7): set_target_properties(tunnel PROPERTIES OUTPUT_NAME kimera ) /home/ubuntu/kimera/apps/tunnel/CMakeLists.txt(9): target_link_libraries(tunnel PRIVATE kimera ) /home/ubuntu/kimera/apps/tunnel/CMakeLists.txt(11): install(TARGETS tunnel RUNTIME ) CMake Error at apps/tunnel/CMakeLists.txt:11 (install): install TARGETS given no RUNTIME DESTINATION for executable target "tunnel".

Weird gray periods on Ubuntu 20.04

linux.yaml

width: 1920
height: 1080
framerate: 30
bitrate: 5000000
packet_size: 8192

transmitter:
  source:
    - display
  sink:
    - udp
  device: :1
  address: 127.0.0.1
  port: 8080
  codec: hevc_nvenc

receiver:
  source: 
    - udp
  sink:
    - display
  address: 127.0.0.1
  port: 8080
  codec: hevc

./tunnel tx ../../../examples/linux.yml

.   CURRENT STATE
β”œβ”€β”€ Dimensions: 1920x1080
β”œβ”€β”€ Framerate:  30 FPS
β”œβ”€β”€ Bitrate:    5000000 bps
└── Packet Len: 8192 Bytes
    .   TRANSMITTER
    β”œβ”€β”€ Source:  DISPLAY
    β”œβ”€β”€ Sink:    UDP
    β”œβ”€β”€ Device:  :1
    β”œβ”€β”€ Address: 127.0.0.1
    β”œβ”€β”€ Port:    8080
    └── Codec:   hevc_nvenc
.   [Render Meta]
β”œβ”€β”€ Window Mode:   HEADLESS
β”œβ”€β”€ Frame Size:    1920x1080
β”œβ”€β”€ Device Size:   960x540
β”œβ”€β”€ Texture Count: 2
└──.   [EGL Meta]
β”‚  β”œβ”€β”€ APIs:       OpenGL_ES OpenGL
β”‚  β”œβ”€β”€ Version:    1.5
β”‚  └── Vendor:     NVIDIA
└──.   [GL Meta]
   β”œβ”€β”€ Renderer:   GeForce GTX 1650 with Max-Q Design/PCIe/SSE2
   β”œβ”€β”€ Version:    OpenGL ES 3.2 NVIDIA 440.64
   β”œβ”€β”€ Vendor:     NVIDIA Corporation
   └── GLSL Ver.:  OpenGL ES GLSL ES 3.20
[RESAMPLER] Performance Degradation:
              Output pixel format is different than the input.
                - Input: bgra -> Output: yuv420p

./tunnel rx ../../../examples/linux.yml

.   CURRENT STATE
β”œβ”€β”€ Dimensions: 1920x1080
β”œβ”€β”€ Framerate:  30 FPS
β”œβ”€β”€ Bitrate:    5000000 bps
└── Packet Len: 8192 Bytes
    .   RECEIVER
    β”œβ”€β”€ Source:  UDP
    β”œβ”€β”€ Sink:    DISPLAY
    β”œβ”€β”€ Device:  /dev/video0
    β”œβ”€β”€ Address: 127.0.0.1
    β”œβ”€β”€ Port:    8080
    └── Codec:   hevc
.   [Render Meta]
β”œβ”€β”€ Window Mode:   WINDOWED
β”œβ”€β”€ Frame Size:    1920x1080
β”œβ”€β”€ Device Size:   960x540
β”œβ”€β”€ Texture Count: 2
└──.   [EGL Meta]
β”‚  β”œβ”€β”€ APIs:       OpenGL_ES OpenGL
β”‚  β”œβ”€β”€ Version:    1.5
β”‚  └── Vendor:     NVIDIA
└──.   [GL Meta]
   β”œβ”€β”€ Renderer:   GeForce GTX 1650 with Max-Q Design/PCIe/SSE2
   β”œβ”€β”€ Version:    OpenGL ES 3.2 NVIDIA 440.64
   β”œβ”€β”€ Vendor:     NVIDIA Corporation
   └── GLSL Ver.:  OpenGL ES GLSL ES 3.20

out

Build error

Thanks for the great project!
I can build it on ubuntu20, but there are errors when build it on ubuntu18.

System: ubuntu18
platform:x86_64
gcc version: 9.4
g++ version:9.4
cmake version: 3.22

cmake -j with error:

[ 96%] Building CXX object apps/tunnel/CMakeFiles/tunnel.dir/tunnel.cc.o
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/home/neo/works/kimera-source/kimera/python/client.hpp: In function β€˜void init_client(pybind11::module&)’:
/home/neo/works/kimera-source/kimera/python/client.hpp:12:10: error: no matching function for call to β€˜init(init_client(pybind11::module&)::<lambda(Kimera::State&)>)’
   12 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/home/neo/works/kimera-source/kimera/python/client.hpp:12:10: note:   candidate expects 0 arguments, 1 provided
   12 |         }))
      |          ^
/home/neo/works/kimera-source/kimera/python/client.hpp:16:10: error: no matching function for call to β€˜init(init_client(pybind11::module&)::<lambda()>)’
   16 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/home/neo/works/kimera-source/kimera/python/client.hpp:16:10: note:   candidate expects 0 arguments, 1 provided
   16 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:2:
/home/neo/works/kimera-source/kimera/python/codec.hpp: In function β€˜void init_codec(pybind11::module&)’:
/home/neo/works/kimera-source/kimera/python/codec.hpp:12:10: error: no matching function for call to β€˜init(init_codec(pybind11::module&)::<lambda(Kimera::State&)>)’
   12 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:2:
/home/neo/works/kimera-source/kimera/python/codec.hpp:12:10: note:   candidate expects 0 arguments, 1 provided
   12 |         }))
      |          ^
/home/neo/works/kimera-source/kimera/python/codec.hpp:19:10: error: no matching function for call to β€˜init(init_codec(pybind11::module&)::<lambda(Kimera::State&)>)’
   19 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:2:
/home/neo/works/kimera-source/kimera/python/codec.hpp:19:10: note:   candidate expects 0 arguments, 1 provided
   19 |         }))
      |          ^
/home/neo/works/kimera-source/kimera/python/codec.hpp:26:10: error: no matching function for call to β€˜init(init_codec(pybind11::module&)::<lambda(Kimera::State&)>)’
   26 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:2:
/home/neo/works/kimera-source/kimera/python/codec.hpp:26:10: note:   candidate expects 0 arguments, 1 provided
   26 |         }))
      |          ^
/home/neo/works/kimera-source/kimera/python/codec.hpp:29:10: error: no matching function for call to β€˜init(init_codec(pybind11::module&)::<lambda(Kimera::State&, Kimera::PixelFormat)>)’
   29 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:2:
/home/neo/works/kimera-source/kimera/python/codec.hpp:29:10: note:   candidate expects 0 arguments, 1 provided
   29 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:3:
/home/neo/works/kimera-source/kimera/python/loopback.hpp: In function β€˜void init_loopback(pybind11::module&)’:
/home/neo/works/kimera-source/kimera/python/loopback.hpp:12:10: error: no matching function for call to β€˜init(init_loopback(pybind11::module&)::<lambda(Kimera::State&)>)’
   12 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:3:
/home/neo/works/kimera-source/kimera/python/loopback.hpp:12:10: note:   candidate expects 0 arguments, 1 provided
   12 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:5:
/home/neo/works/kimera-source/kimera/python/transport.hpp: In function β€˜void init_transport(pybind11::module&)’:
/home/neo/works/kimera-source/kimera/python/transport.hpp:12:10: error: no matching function for call to β€˜init(init_transport(pybind11::module&)::<lambda(Kimera::State&)>)’
   12 |         }))
      |          ^
In file included from /home/neo/works/kimera-source/kimera/python/client.hpp:3,
                 from /home/neo/works/kimera-source/kimera/python/index.cc:1:
/usr/include/pybind11/pybind11.h:1418:51: note: candidate: β€˜template<class ... Args> pybind11::detail::init<Args ...> pybind11::init()’
 1418 | template <typename... Args> detail::init<Args...> init() { return detail::init<Args...>(); }
      |                                                   ^~~~
/usr/include/pybind11/pybind11.h:1418:51: note:   template argument deduction/substitution failed:
In file included from /home/neo/works/kimera-source/kimera/python/index.cc:5:
/home/neo/works/kimera-source/kimera/python/transport.hpp:12:10: note:   candidate expects 0 arguments, 1 provided
   12 |         }))
      |          ^
/home/neo/works/kimera-source/kimera/python/index.cc: At global scope:
/home/neo/works/kimera-source/kimera/python/index.cc:14:16: error: expected constructor, destructor, or type conversion before β€˜(’ token
   14 | PYBIND11_MODULE(kimera, m) {
      |                ^
[ 98%] Linking CXX executable ../../bin/kimera
CMakeFiles/tunnel.dir/tunnel.cc.o: In function `boost::system::error_category::std_category::equivalent(std::error_code const&, int) const':
tunnel.cc:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x40): undefined reference to `boost::system::generic_category()'
tunnel.cc:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0xb9): undefined reference to `boost::system::generic_category()'
tunnel.cc:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x149): undefined reference to `boost::system::generic_category()'
CMakeFiles/tunnel.dir/tunnel.cc.o: In function `boost::system::error_category::std_category::equivalent(int, std::error_condition const&) const':
tunnel.cc:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x3f): undefined reference to `boost::system::generic_category()'
tunnel.cc:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0xd1): undefined reference to `boost::system::generic_category()'
CMakeFiles/tunnel.dir/tunnel.cc.o:tunnel.cc:(.text.startup+0x1f6): more undefined references to `boost::system::generic_category()' follow
CMakeFiles/tunnel.dir/tunnel.cc.o: In function `_GLOBAL__sub_I__Z8receiverRN6Kimera5StateERNS_6ClientE':
tunnel.cc:(.text.startup+0x200): undefined reference to `boost::system::system_category()'
tunnel.cc:(.text.startup+0x205): undefined reference to `boost::system::system_category()'
collect2: error: ld returned 1 exit status
apps/tunnel/CMakeFiles/tunnel.dir/build.make:98: recipe for target 'bin/kimera' failed
make[2]: *** [bin/kimera] Error 1
CMakeFiles/Makefile2:1121: recipe for target 'apps/tunnel/CMakeFiles/tunnel.dir/all' failed
make[1]: *** [apps/tunnel/CMakeFiles/tunnel.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
python/CMakeFiles/python.dir/build.make:75: recipe for target 'python/CMakeFiles/python.dir/index.cc.o' failed
make[2]: *** [python/CMakeFiles/python.dir/index.cc.o] Error 1
CMakeFiles/Makefile2:1094: recipe for target 'python/CMakeFiles/python.dir/all' failed
make[1]: *** [python/CMakeFiles/python.dir/all] Error 2
Makefile:135: recipe for target 'all' failed
make: *** [all] Error 2

Can't Parse file

virtual-machine:/kimera$ kimera tx ../examples/linux.yml
[CLIENT] Can't parse file: bad file: ../examples/linux.yml
virtual-machine:
/kimera$

Issues compiling on RaspberryPi OS

[~/kimera/build]$ make -j                                                                                                                                                                                                            [master] 
[  8%] Building C object CMakeFiles/kimera.dir/src/render/stages/draw.c.o
[  8%] Building C object CMakeFiles/kimera.dir/src/render/stages/pull.c.o
[ 12%] Building C object CMakeFiles/kimera.dir/src/render/stages/utils.c.o
[ 16%] Building C object CMakeFiles/kimera.dir/src/render/stages/process.c.o
[ 20%] Building C object CMakeFiles/kimera.dir/src/render/stages/push.c.o
In file included from /home/patricio/kimera/src/render/stages/pull.c:1:
/home/patricio/kimera/include/kimera/render.h:48:10: fatal error: shaders.h: No such file or directory
 #include "shaders.h"
          ^~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/kimera.dir/build.make:232: CMakeFiles/kimera.dir/src/render/stages/pull.c.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /home/patricio/kimera/src/render/stages/utils.c:1:
/home/patricio/kimera/include/kimera/render.h:48:10: fatal error: shaders.h: No such file or directory
 #include "shaders.h"
          ^~~~~~~~~~~
compilation terminated.
In file included from /home/patricio/kimera/src/render/stages/process.c:1:
/home/patricio/kimera/include/kimera/render.h:48:10: fatal error: shaders.h: No such file or directory
 #include "shaders.h"
          ^~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/kimera.dir/build.make:258: CMakeFiles/kimera.dir/src/render/stages/utils.c.o] Error 1
make[2]: *** [CMakeFiles/kimera.dir/build.make:219: CMakeFiles/kimera.dir/src/render/stages/process.c.o] Error 1
In file included from /home/patricio/kimera/src/render/stages/draw.c:1:
/home/patricio/kimera/include/kimera/render.h:48:10: fatal error: shaders.h: No such file or directory
 #include "shaders.h"
          ^~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/kimera.dir/build.make:206: CMakeFiles/kimera.dir/src/render/stages/draw.c.o] Error 1
In file included from /home/patricio/kimera/src/render/stages/push.c:1:
/home/patricio/kimera/include/kimera/render.h:48:10: fatal error: shaders.h: No such file or directory
 #include "shaders.h"
          ^~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/kimera.dir/build.make:245: CMakeFiles/kimera.dir/src/render/stages/push.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/kimera.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

Convert library to C++ and add Python bindings

When I began writing this library in C I didn't realize how big it would turn out to be. This is why I'm proposing to convert it to C++. It will improve the code organization, automate class initialization, and ultimately reduce the amount of boilerplate code. The refactor will follow modern C++ standards and only apply C++ functions when performance isn't a priority. The refactor to C++ will also enable the library to have Python 3 bindings. Since C++ is a superset of C I don't expect usability problems for the small current userbase.

Outdated documentation

Seams you have some outdated documentation:

  • There is no kimera app
    $ ./kimera tx ../examples/linux.yml

  • The scrip use some python glue which require pathlib module which is not installed by default in RaspberryPi. The following is needed:

sudo apt install python-pip python3-pip
sudo pip install pathlib
sudo pip3 install pathlib

Compilation Errors on Linux 4.9.140-tegra

I'm compiling for Jetson Nano and when following the instructions you've provided, I get the following:

cmake -DCMAKE_BUILD_TYPE=Release ..
CMake Error: The source directory "/home/<user>" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.

so I run cmake -DCMAKE_BUILD_TYPE=Release . and get:

-- Assuming Linux system...
CMake Error at apps/CMakeLists.txt:4 (add_subdirectory):
  The source directory

    /home/<user>/kimera/apps/CMakeFiles

  does not contain a CMakeLists.txt file.


-- Configuring incomplete, errors occurred!
See also "/home/<user>/kimera/CMakeFiles/CMakeOutput.log".

Changing into the build directory and running cmake -DCMAKE_BUILD_TYPE=Release .. results in the same output as above.

Error linking on Ubuntu 20.04

I'm getting the following linking error:

[ 89%] Built target kimera
[ 94%] Linking C executable tunnel
/usr/bin/ld: CMakeFiles/tunnel.dir/tunnel.c.o: in function `receiver':
tunnel.c:(.text+0xe8): undefined reference to `free_loopback'
/usr/bin/ld: CMakeFiles/tunnel.dir/tunnel.c.o: in function `transmitter':
tunnel.c:(.text+0x2d1): undefined reference to `free_loopback'
collect2: error: ld returned 1 exit status
make[2]: *** [apps/tunnel/CMakeFiles/tunnel.dir/build.make:85: apps/tunnel/tunnel] Error 1
make[1]: *** [CMakeFiles/Makefile2:160: apps/tunnel/CMakeFiles/tunnel.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.