Skip to content

jacobperron/rclzig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rclzig

A ROS 2 client library in the Zig programming language.

Features

  • TODO

Why?

This project was created as a personal way to learn Zig. I was intrigued by the features Zig has to offer (e.g. simple, zero-dependency drop-in replacement for C/C++, cross-compilation out-of-the-box). As an exercise, I challenged myself to integrate the language with ROS 2 and this is the result.

Should I use this in production?

No, probably not.

Zig is a very young language (still pre-1.0 release) and not stable. The same applies for rclzig.

Okay, how can I use rclzig?

Install dependencies

Build

  1. Clone this repository

     git clone https://github.com/jacobperron/rclzig.git
    
  2. Source your ROS 2 installation, e.g. ROS Galactic:

     source /opt/ros/galactic/setup.bash
    
  3. Build:

     cd rclzig
     zig build
    
  4. Optionally, run tests:

     zig build test
    

Try the examples

Run the talker:

zig build talker

In a second shell, run the listener:

zig build listener

Build your own package

TODO

Excellent! How can I contribute?

See CONTRIBUTING.md.

References

Here are some nice resource for learning Zig:

About

ROS 2 client library in Zig.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages