pkg.soopen package index

brew / rank 5237

Install lcm with Homebrew, Nix, apt

Libraries and tools for message passing and data marshalling. Version 1.5.2 via Homebrew; verified from local package data. Also installable with debian: sudo apt install liblcm-bin.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install lcm

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#lcm

nixpkgs package indexes · pkgs/by-name/lc/lcm/package.nix · source: api.github.com

Debian aptverified · 92%
sudo apt install liblcm-bin

Debian stable package indexes · liblcm-bin · source: deb.debian.org

overview

Package summary

Libraries and tools for message passing and data marshalling

Commands and aliases

  • lcm-gen
  • lcm-logger
  • lcm-logplayer
  • lcm-logplayer-gui
  • lcm-spy

history

Project history and usage

LCM, Lightweight Communications and Marshalling, is a message-passing and data-marshalling system for real-time robotics and autonomous systems. It combines publish/subscribe transport, a type specification language, generated language bindings, logging, playback, and traffic inspection tools.

Project history

The official documentation says LCM was originally developed in 2006 for the MIT DARPA Urban Challenge team. The project authors list Edwin Olson, David Moore, and Albert Huang as original authors, and the 2009 MIT technical report and 2010 IROS paper describe the design as a low-latency, hubless communication library for robotics research.

LCM's early design emphasized UDP multicast, generated type-safe bindings, log files, and tools such as `lcm-logger`, `lcm-logplayer`, and `lcm-spy`. Version 1.0.0 was released on 2013-06-08, and later releases added Python 3 support, CMake, Lua, Go experiments, Windows work, Sphinx documentation, Python wheels, Meson/Bazel work, and maintenance for newer compilers and operating systems.

Adoption history

LCM spread through robotics and autonomous-systems groups because it was lighter than larger middleware stacks and did not require a central daemon or broker. The official docs list users from research and production environments, including universities, automakers, defense companies, robotics companies, Google, MIT, KAIST, University of Michigan, Volvo Car Group, and Woods Hole Oceanographic Institute.

Package adoption in Homebrew, Debian/Ubuntu, and Nix reflects its use by developers who need reproducible CLI tools and libraries for logging and replaying robotic messages alongside C, C++, Java, Lua, MATLAB, and Python bindings.

How it is used

Typical usage defines message types in `.lcm` files, generates bindings with `lcm-gen`, publishes and subscribes to channels from application code, records traffic with `lcm-logger`, replays logs with `lcm-logplayer`, and inspects live traffic with `lcm-spy`.

Why package nerds care

LCM matters to package nerds because it is infrastructure glue for robotics: libraries, code generators, command-line tools, Java artifacts, Python modules, and documentation all have to line up across languages and platforms.

It is also a useful contrast with ROS-style middleware. LCM's no-daemon, UDP-multicast, few-dependency design makes it attractive in package managers where small dependency closure and easy installation matter.

Timeline

  • 2006: Originally developed for the MIT DARPA Urban Challenge team.
  • 2009: MIT CSAIL technical report published an expanded LCM description.
  • 2010: IROS paper described LCM for low-latency message passing and marshalling.
  • 2013-06-08: Version 1.0.0 released.
  • 2014-11-18: Version 1.2.0 marked migration of the official site to GitHub.
  • 2018-08-30: Version 1.4.0 switched the build system to CMake.
  • 2023-04-19: Version 1.5.0 moved documentation to Sphinx at `lcm-proj.github.io/lcm/`.
  • 2025-10-23: Version 1.5.2 added stable source archive attachments and Windows-related tool support.

Related projects

  • Related projects include ROS, robotics log and replay tools, UDP multicast infrastructure, DARPA Urban Challenge software stacks, CMake, Sphinx, Java and Python language bindings, and community forks adding languages such as Rust and Vala.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
lcm-genexecutableindexed executableDiscovered from the local executable index.
lcm-loggerexecutableindexed executableDiscovered from the local executable index.
lcm-logplayerexecutableindexed executableDiscovered from the local executable index.
lcm-logplayer-guiexecutableindexed executableDiscovered from the local executable index.
lcm-spyexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version1.5.2
manager updated
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:lcm
Version1.5.2
Package managerHomebrew
Homepagehttps://lcm-proj.github.io/
Repositoryhttps://github.com/lcm-proj/lcm
Bottlenot recorded
Servicenone declared

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

liblcm-bin 1.3.1+repack1-9

Lightweight Communications and Marshalling - Executable tools

http://lcm-proj.github.io/

sudo apt install liblcm-bin
  • Section: libs
  • Architecture: amd64
  • Source Package: lcm
  • 3 dependencies
  • normalized package name match
  • Matched by: Lcm
Debian stable package indexes · deb.debian.org · Debian stable package indexes: liblcm-bin from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

liblcm-dev 1.3.1+repack1-9

Lightweight Communications and Marshalling - Dev files

http://lcm-proj.github.io/

sudo apt install liblcm-dev
  • Section: libs
  • Architecture: amd64
  • Source Package: lcm
  • 2 dependencies
  • normalized package name match
  • Matched by: Lcm
Debian stable package indexes · deb.debian.org · Debian stable package indexes: liblcm-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

liblcm-doc 1.3.1+repack1-9

Lightweight Communications and Marshalling - Documentation

http://lcm-proj.github.io/

sudo apt install liblcm-doc
  • Section: libs
  • Architecture: all
  • Source Package: lcm
  • normalized package name match
  • Matched by: Lcm
Debian stable package indexes · deb.debian.org · Debian stable package indexes: liblcm-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

liblcm-java 1.3.1+repack1-9

Lightweight Communications and Marshalling - Java Interface

http://lcm-proj.github.io/

sudo apt install liblcm-java
  • Section: libs
  • Architecture: amd64
  • Source Package: lcm
  • 2 dependencies
  • normalized package name match
  • Matched by: Lcm
Debian stable package indexes · deb.debian.org · Debian stable package indexes: liblcm-java from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

liblcm1 1.3.1+repack1-9

Lightweight Communications and Marshalling - Runtime lib

http://lcm-proj.github.io/

sudo apt install liblcm1
  • Section: libs
  • Architecture: amd64
  • Source Package: lcm
  • 2 dependencies
  • normalized package name match
  • Matched by: Lcm
Debian stable package indexes · deb.debian.org · Debian stable package indexes: liblcm1 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

lcm

nix profile install nixpkgs#lcm
  • normalized package name match
  • Matched by: Lcm
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/lc/lcm/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

liblcm-bin 1.5.0~repack1-0ubuntu1

Lightweight Communications and Marshalling - Executable tools

http://lcm-proj.github.io/

sudo apt install liblcm-bin
  • Section: universe/libs
  • Architecture: amd64
  • Source Package: lcm
  • 5 dependencies
  • normalized package name match
  • Matched by: Lcm
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: liblcm-bin from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
Ubuntu apt95%

liblcm-dev 1.5.0~repack1-0ubuntu1

Lightweight Communications and Marshalling - Dev files

http://lcm-proj.github.io/

sudo apt install liblcm-dev
  • Section: universe/libs
  • Architecture: amd64
  • Source Package: lcm
  • 2 dependencies
  • normalized package name match
  • Matched by: Lcm
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: liblcm-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
Ubuntu apt95%

liblcm-doc 1.5.0~repack1-0ubuntu1

Lightweight Communications and Marshalling - Documentation

http://lcm-proj.github.io/

sudo apt install liblcm-doc
  • Section: universe/libs
  • Architecture: all
  • Source Package: lcm
  • 7 dependencies
  • normalized package name match
  • Matched by: Lcm
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: liblcm-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
Ubuntu apt95%

liblcm-java 1.5.0~repack1-0ubuntu1

Lightweight Communications and Marshalling - Java Interface

http://lcm-proj.github.io/

sudo apt install liblcm-java
  • Section: universe/libs
  • Architecture: all
  • Source Package: lcm
  • 1 dependencies
  • normalized package name match
  • Matched by: Lcm
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: liblcm-java from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
Ubuntu apt95%

liblcm1 1.5.0~repack1-0ubuntu1

Lightweight Communications and Marshalling - Runtime lib

http://lcm-proj.github.io/

sudo apt install liblcm1
  • Section: universe/libs
  • Architecture: amd64
  • Source Package: lcm
  • 2 dependencies
  • normalized package name match
  • Matched by: Lcm
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: liblcm1 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
Ubuntu apt95%

python3-lcm 1.5.0~repack1-0ubuntu1

Lightweight Communications and Marshalling - Python Interface

http://lcm-proj.github.io/

sudo apt install python3-lcm
  • Section: universe/python
  • Architecture: amd64
  • Source Package: lcm
  • 6 dependencies
  • normalized package name match
  • Matched by: Lcm
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: python3-lcm from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • pkg.so package database
  • pkgdb category and tag curation