# Installer libplctag avec Homebrew, Nix

Consultez les chemins d'installation, exécutables, métadonnées et notes de sécurité de libplctag pour les workflows d'agents IA.

## installation

```sh
sudo av install brew:libplctag
```

Commandes d'installation supplémentaires:

### macOS

- Homebrew (100%):

```sh
brew install libplctag
```

  Preuve: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#libplctag
```

  Preuve: nixpkgs package indexes: pkgs/by-name/li/libplctag/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Faits du paquet

- **Clé du paquet:** brew:libplctag
- **Gestionnaire de paquets:** Homebrew
- **Version:** 2.7.0
- **Résumé source:** Portable and simple API for accessing AB PLC data over Ethernet
- **Page d'accueil:** <https://github.com/libplctag/libplctag>
- **Dépôt:** <https://github.com/libplctag/libplctag>
- **Généré:** 2026-08-03T19:37:03+00:00

## exécutables

- modbus_server (alias)
- tag_rw2 (alias)

## Comportement d'installation

- Bouteille: non disponible

## Version et fraîcheur

- page générée: 2026-08-03
- version du gestionnaire: 2.7.0
## Historique du projet et usages

libplctag is an open-source C library for reading and writing programmable-logic-controller tags over EtherNet/IP and Modbus TCP. It targets industrial automation users who need a small portable API instead of a broad OPC stack.

### Historique du projet

The upstream history page says the project began because the maintainers wanted the practical PLC access they needed without the cost, size, Windows/OLE dependency, and licensing constraints they associated with OPC implementations. They evaluated older PCCC libraries and TuxEIP, found licensing, portability, maintainability, and API-shape problems, then wrote their own library without copying TuxEIP code.

The README states that libplctag has been in production use since early 2012. Over time the project kept a C core, a deliberately small API, and examples/wrappers for higher-level languages.

### Historique d'adoption

Upstream describes production use across radio telescopes, manufacturing, fitness equipment, food handling, and other industrial settings. That adoption pattern is narrower than a general developer library but unusually practical: it is used where software talks to physical PLC-controlled systems.

The project also grew a wrapper ecosystem, including .NET, Go, Java, Julia, C++, Python, and Pascal bindings or examples. That made the C library a common native core for language-specific automation clients.

### Modes d'utilisation

Developers use libplctag to read and write PLC tag values, list tags, handle callbacks, and build small command-line or service tools around Allen-Bradley/Rockwell and Modbus TCP devices.

Package users see helper executables such as `tag_rw2` and examples, but the package's main role is as a native library dependency for industrial-control applications.

### Pourquoi les passionnés de paquets s'y intéressent

libplctag is notable because it packages industrial automation access as a normal open-source C dependency. That is unusual territory for package managers: real machinery, proprietary protocol history, cross-platform binaries, and wrappers all meet in one modest library.

The dual MPL-2.0/LGPL-2.0-or-later licensing also matters for integrators who need something less restrictive than GPL-only PLC code.

### Chronologie

- 2012: The README states that libplctag has been in production use since early 2012.
- 2022: The API wiki history records updates for 2.4.0 and 2.5.0 API changes.
- 2026: The README lists tier-one platform testing across Linux, macOS, and Windows combinations.

### Related projects

- TuxEIP/TuxPLC is the abandoned earlier EtherNet/IP-related codebase discussed in libplctag's origin story.
- libplctag.NET, goplctag, libplctag4j, and PLCTag.jl are related wrappers that expose the C core to other language ecosystems.
- OPC is the larger industrial-automation integration family that libplctag's maintainers explicitly wanted to avoid for their narrower use case.

### Sources

- <https://github.com/libplctag/libplctag>
- <https://github.com/libplctag/libplctag/wiki/API>
- <https://libplctag.github.io/>
- <https://raw.githubusercontent.com/libplctag/libplctag/master/README.md>
- <https://raw.githubusercontent.com/wiki/libplctag/libplctag/History.md>


## Notes de sécurité

broad file, network, media, or database tool signal.

- **Risque Geiger:** blue / moyen
- broad file, network, media, or database tool signal

## Autres enregistrements de gestionnaires de paquets

- Nix - libplctag: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libplctag/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/libplctag.yml](https://github.com/mxcl/pkgdb/blob/main/combined/libplctag.yml)


## Sources

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