# Orc

> software library and toolset for compiling and executing certain programs

**Wikidata**: [Q114973307](https://www.wikidata.org/wiki/Q114973307)  
**Source**: https://4ort.xyz/entity/orc-q114973307

## Summary
Orc is a free software library and toolset designed for compiling and executing certain programs. Also known as the Optimized Inner Loops Runtime Compiler (ORC), it operates as a specialized programming tool within the freedesktop.org ecosystem, specifically associated with the GStreamer project. It is distributed under the 2-clause BSD License.

## Key Facts
*   **Aliases:** OIL Runtime Compiler, Optimized Inner Loops Runtime Compiler, ORC.
*   **License:** 2-clause BSD License.
*   **Category:** Free software, software library, and programming tool.
*   **Parent Project:** Part of freedesktop.org; applies to the GStreamer multimedia framework.
*   **Latest Stable Version:** 0.4.40 (released September 12, 2024).
*   **Source Repository:** Hosted on GitLab at `https://gitlab.freedesktop.org/gstreamer/orc.git`.
*   **Official Website:** `https://gstreamer.freedesktop.org/modules/orc.html`.
*   **Software Packages:** Available in Debian (as `liborc-0.4-0`), Ubuntu, Arch Linux, Gentoo, FreeBSD, OpenBSD, NetBSD, and macOS via MacPorts.

## FAQs
### Q: What does Orc stand for?
A: Orc stands for "Optimized Inner Loops Runtime Compiler." It was previously known as the "OIL Runtime Compiler."

### Q: Under what license is Orc distributed?
A: Orc is distributed as free software under the 2-clause BSD License.

### Q: How is Orc related to GStreamer?
A: Orc is a module within the freedesktop.org project that applies to GStreamer, a multimedia framework.

## Why It Matters
Orc plays a specific technical role in the open-source software ecosystem as a "Just-In-Time" (JIT) compilation tool. By serving as an "Optimized Inner Loops Runtime Compiler," it allows software developers to write portable code that can be executed efficiently on different processor architectures without needing to hand-write assembly code for each one. This capability is particularly significant for multimedia frameworks like GStreamer, where performance is critical for tasks such as video and audio processing.

The library's widespread adoption is evidenced by its availability across nearly all major Unix-like operating systems, including Debian, Ubuntu, Arch Linux, FreeBSD, and NetBSD. Its continued development, with stable versions released as recently as September 2024, highlights its ongoing relevance as a build dependency and runtime tool for modern Linux and BSD distributions.

## Notable For
*   **Broad OS Compatibility:** Orc is supported on a wide range of Unix-like systems, including specific ports for FreeBSD, OpenBSD, NetBSD, and packages for major Linux distributions like Debian, Ubuntu, Arch, and Gentoo.
*   **GStreamer Integration:** It is a core component associated with the GStreamer multimedia framework.
*   **Active Development:** The project maintains an active release schedule, with multiple stable updates released in 2024 (versions 0.4.37, 0.4.38, and 0.4.40).

## Body
### Definition and Classification
Orc is classified as a software library, a programming tool, and free software. The name is an acronym for "Optimized Inner Loops Runtime Compiler," though it also retains the alias "OIL Runtime Compiler" from previous iterations. The toolset functions to compile and execute specific program operations, optimizing them for the underlying hardware.

### Project History and Development
The software is a project under the **freedesktop.org** umbrella, specifically noted as a part applicable to **GStreamer**. Development is active, with source code hosted on GitLab (`gitlab.freedesktop.org`).

Recent development milestones include:
*   **Version 0.4.33:** Released October 31, 2022.
*   **Version 0.4.34:** Released May 30, 2023.
*   **Version 0.4.37:** Released February 6, 2024.
*   **Version 0.4.38:** Released February 28, 2024.
*   **Version 0.4.40:** Released September 12, 2024.

### Distribution and Availability
Orc is widely distributed across various operating systems, primarily utilizing the BSD and Linux kernels. Specific package identifiers include:
*   **Debian/Ubuntu:** `liborc-0.4-0` (library), `liborc-0.4-dev` (development headers), and `liborc-0.4-doc` (documentation).
*   **FreeBSD/OpenBSD/NetBSD:** `devel/orc`.
*   **Arch Linux:** `orc`.
*   **Gentoo:** `dev-lang/orc`.
*   **Guix:** Variable name `orc`.
*   **macOS:** Available via MacPorts as `orc`.

### Licensing
The project is fully copyrighted but free to use, modify, and distribute under the terms of the **2-clause BSD License**. This permissive licensing allows it to be integrated into both open-source and proprietary software stacks, provided the copyright notice is retained.

## References

1. [Source](https://gitlab.freedesktop.org/gstreamer/orc/-/blob/main/COPYING)
2. [Orc 0.4.33 release. 2022](https://lists.freedesktop.org/archives/gstreamer-announce/2022-November/000527.html)
3. [Orc 0.4.34 release](https://lists.freedesktop.org/archives/gstreamer-announce/2023-May/000537.html)
4. [Orc 0.4.37 bug-fix release](https://lists.freedesktop.org/archives/gstreamer-announce/2024-February/000556.html)
5. [Orc 0.4.38 bug-fix release](https://lists.freedesktop.org/archives/gstreamer-announce/2024-February/000562.html)
6. [Source](https://lists.freedesktop.org/archives/gstreamer-announce/2024-September/000578.html)
7. [Orc 0.4.42 bug-fix and feature release](https://lists.freedesktop.org/archives/gstreamer-announce/2026-January/000614.html)
8. [Source](https://packages.debian.org/source/bullseye/orc)
9. [Source](https://guix.gnu.org/en/packages/orc-0.4.32/)