# 使用 Homebrew, apk, dnf, MacPorts, Nix, pacman, apt, zypper 安装 libidn

查看 libidn 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:libidn
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install libidn
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install libidn
```

  证据: MacPorts ports tree: mail/libidn/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add libidn
```

  证据: Alpine Linux edge package indexes: libidn from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- dnf (92%):

```sh
sudo dnf install libidn
```

  证据: Fedora Rawhide package metadata: libidn from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#libidn
```

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

- pacman (92%):

```sh
sudo pacman -S libidn
```

  证据: Arch Linux sync databases: libidn from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- Debian apt (92%):

```sh
sudo apt install idn
```

  证据: Debian stable package indexes: idn from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- zypper (92%):

```sh
sudo zypper install libidn-devel
```

  证据: openSUSE Tumbleweed package metadata: libidn-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## 软件包事实

- **软件包键:** brew:libidn
- **软件包管理器:** Homebrew
- **软件包管理器页面:** <https://formulae.brew.sh/formula/libidn>
- **版本:** 1.44
- **来源摘要:** International domain name library
- **主页:** <https://www.gnu.org/software/libidn/>
- **上游文档:** <https://www.gnu.org/software/libidn/>
- **许可证:** GPL-2.0-or-later OR LGPL-3.0-or-later
- **源码归档:** <https://ftpmirror.gnu.org/gnu/libidn/libidn-1.44.tar.gz>
- **已生成:** 2026-08-04T22:13:35+00:00

## 可执行文件

- idn (cli)
- idn (别名)

## 构建依赖

- pkgconf

## 安装行为

- post-install 钩子: 未定义
- Bottle: 可用 于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## 版本和新鲜度

- 页面生成时间: 2026-08-04
- 管理器版本: 1.44
- 本地数据: OK
- 上游仓库: https://www.gnu.org/software/libidn/
- 信息: No package-manager update timestamp was available.
- 信息: Release/tag comparison is only available for GitHub repositories.
## 项目历史与用法

GNU Libidn is the original GNU implementation of internationalized-domain-name handling for the IDNA2003 era, with Stringprep, Nameprep, Punycode, and related TLD validation APIs.

### 项目历史

Libidn started as an implementation of the IETF IDN working group's Stringprep and IDNA work. The GNU manual's history section records version 0.0.0 on 2002-11-05 with Stringprep support, version 0.1.0 on 2003-01-05 with IDNA and Punycode support, and version 0.1.11 on 2003-02-26 with a command-line interface.

The March 2003 IDNA RFCs standardized the ASCII-compatible encoding approach that let applications represent non-ASCII domain labels through ASCII DNS labels beginning with the xn-- prefix. Libidn turned that standards stack into a reusable C library and command-line tool.

The manual records a GNU libc add-on proposal in March 2003 and integration in March 2004. The project page notes Fedora Core 3 included Libidn 0.5.6 in November 2004, and that version 1.0 was released on 2007-07-31 to mark stable status after production use.

### 采用历史

Libidn spread through network clients and authentication-related software that needed to accept internationalized names while still speaking ASCII DNS or protocol internals. The GNU project page names GNU SASL and Shishi as users for processing user names and passwords.

After IDNA2008 replaced the IDNA2003 standards, Libidn remained important for compatibility with older software and older protocol behavior, while GNU Libidn2 became the successor implementation for IDNA2008 and TR46.

### 使用方式

The idn command converts domain names to and from ASCII Compatible Encoding, and the library exposes Stringprep, Punycode, IDNA, and TLD APIs for applications that need deterministic internationalized-name handling.

### 为什么软件包爱好者会关心

Libidn is a standards-history package: it ties DNS, Unicode 3.2-era string preparation, Punycode, application compatibility, and distro policy into one small dependency. Package maintainers often encounter it when deciding whether old software needs IDNA2003 compatibility or can move to libidn2.

Its glibc add-on history also makes it a useful example of how networking behavior can move between optional libraries, libc, and application-level dependencies.

### 时间线

- 2002: Version 0.0.0 released with Stringprep implementation.
- 2003: Version 0.1.0 added IDNA and Punycode and became part of the GNU project.
- 2003: Version 0.1.11 added the command-line interface.
- 2004: GNU libc add-on integration recorded by the Libidn manual.
- 2007: Version 1.0 released to mark stable status.

### Related projects

- GNU Libidn2 is the successor for IDNA2008 and TR46.
- RFC 3490, RFC 3491, RFC 3492, and RFC 3454 are the main IDNA2003-era standards behind the package.
- GNU SASL and Shishi are named GNU consumers in the project documentation.

### 来源

- <https://datatracker.ietf.org/doc/rfc3490/>
- <https://www.gnu.org/software/libidn/>
- <https://www.gnu.org/software/libidn/manual/html_node/History.html>
- <https://www.gnu.org/software/libidn/manual/libidn.html>
- <https://www.rfc-editor.org/rfc/rfc3454>
- <https://www.rfc-editor.org/rfc/rfc3491>
- <https://www.rfc-editor.org/rfc/rfc3492>


## 安全说明

library-like package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- library-like package without higher-risk signals

## 源数据库详情

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** libidn
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## 其他软件包管理器记录

- Debian apt - idn - 1.43-1: normalized package name match | Debian stable package indexes: idn from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Command line interface to GNU Libidn | https://www.gnu.org/software/libidn/
- Debian apt - libidn-dev - 1.43-1: normalized package name match | Debian stable package indexes: libidn-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Development files for GNU Libidn, an IDN library | https://www.gnu.org/software/libidn/
- Debian apt - libidn12 - 1.43-1: normalized package name match | Debian stable package indexes: libidn12 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | GNU Libidn library, implementation of IETF IDN specifications | https://www.gnu.org/software/libidn/
- Nix - libidn: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libidn/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - idn - 1.42-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: idn from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Command line interface to GNU Libidn | https://www.gnu.org/software/libidn/
- Ubuntu apt - libidn-dev - 1.42-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libidn-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Development files for GNU Libidn, an IDN library | https://www.gnu.org/software/libidn/
- Ubuntu apt - libidn11-dev - 1.42-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libidn11-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Transitional development package for GNU Libidn | https://www.gnu.org/software/libidn/
- Ubuntu apt - libidn12 - 1.42-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libidn12 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | GNU Libidn library, implementation of IETF IDN specifications | https://www.gnu.org/software/libidn/
- apk - libidn - 1.44-r0: normalized package name match | Alpine Linux edge package indexes: libidn from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Encode/Decode library for internationalized domain names | https://www.gnu.org/software/libidn
- apk - libidn-dev - 1.44-r0: normalized package name match | Alpine Linux edge package indexes: libidn-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Encode/Decode library for internationalized domain names (development files) | https://www.gnu.org/software/libidn
- apk - libidn-doc - 1.44-r0: normalized package name match | Alpine Linux edge package indexes: libidn-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Encode/Decode library for internationalized domain names (documentation) | https://www.gnu.org/software/libidn
- dnf - libidn - 1.44-2.fc45: normalized package name match | Fedora Rawhide package metadata: libidn from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst | Internationalized Domain Name support library | http://www.gnu.org/software/libidn/
- dnf - libidn-devel - 1.44-2.fc45: normalized package name match | Fedora Rawhide package metadata: libidn-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst | Development files for the libidn library | http://www.gnu.org/software/libidn/
- dnf - libidn-java - 1.44-2.fc45: normalized package name match | Fedora Rawhide package metadata: libidn-java from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst | Java port of the GNU Libidn library | http://www.gnu.org/software/libidn/
- dnf - libidn-javadoc - 1.44-2.fc45: normalized package name match | Fedora Rawhide package metadata: libidn-javadoc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst | Javadoc for libidn-java | http://www.gnu.org/software/libidn/
- pacman - libidn - 1.44-1: normalized package name match | Arch Linux sync databases: libidn from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Implementation of the Stringprep, Punycode and IDNA specifications | https://www.gnu.org/software/libidn/


## 相关链接

- [Terminal utility packages](https://pkg.so/zh-hans/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://pkg.so/zh-hans/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://pkg.so/zh-hans/brew-utility-packages/) - Matched Homebrew package provider.
- [pkgconf](https://pkg.so/zh-hans/brew/pkgconf/) - Build dependency declared by Homebrew.
- [ghostscript](https://pkg.so/zh-hans/brew/ghostscript/) - Popular package that depends on this formula.
- [pidgin](https://pkg.so/zh-hans/brew/pidgin/) - Popular package that depends on this formula.
- [mcabber](https://pkg.so/zh-hans/brew/mcabber/) - Popular package that depends on this formula.
- [gloox](https://pkg.so/zh-hans/brew/gloox/) - Popular package that depends on this formula.
- [tgif](https://pkg.so/zh-hans/brew/tgif/) - Popular package that depends on this formula.
- [hesiod](https://pkg.so/zh-hans/brew/hesiod/) - Popular package that depends on this formula.
- [libidn2](https://pkg.so/zh-hans/brew/libidn2/) - Package name indicates the same formula family.
- [adns](https://pkg.so/zh-hans/brew/adns/) - Shares pkgdb curated category or tags: cli, dns, gnu, networking.
- [dnsmasq](https://pkg.so/zh-hans/brew/dnsmasq/) - Shares pkgdb curated category or tags: cli, dns, networking.
- [ldns](https://pkg.so/zh-hans/brew/ldns/) - Shares pkgdb curated category or tags: cli, dns, networking.
- [bind](https://pkg.so/zh-hans/brew/bind/) - Shares pkgdb curated category or tags: cli, dns, networking.
- [doggo](https://pkg.so/zh-hans/brew/doggo/) - Shares pkgdb curated category or tags: cli, dns, networking.
- [dnscrypt-proxy](https://pkg.so/zh-hans/brew/dnscrypt-proxy/) - Shares pkgdb curated category or tags: cli, dns, networking.
- [knot](https://pkg.so/zh-hans/brew/knot/) - Shares pkgdb curated category or tags: cli, dns, networking.
- [inetutils](https://pkg.so/zh-hans/brew/inetutils/) - Local package facts share a topical domain. Shared terms: cli, gnu, networking.
- [wget](https://pkg.so/zh-hans/brew/wget/) - Local package facts share a topical domain. Shared terms: cli, gnu, networking.

## Combined YAML source

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


## 来源

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