macOS
brew install tradcpplocal Homebrew formula metadata
sudo port install tradcppMacPorts ports tree · devel/tradcpp/Portfile · 来源: api.github.com
安装
brew install tradcpplocal Homebrew formula metadata
sudo port install tradcppMacPorts ports tree · devel/tradcpp/Portfile · 来源: api.github.com
nix profile install nixpkgs#tradcppnixpkgs package indexes · pkgs/by-name/tr/tradcpp/package.nix · 来源: api.github.com
概览
K&R-style C preprocessor
历史
tradcpp is a small traditional, K&R-style C preprocessor maintained from David Holland's NetBSD pages. Its history is tied less to compiling C and more to preserving old build techniques that used cpp as a general text preprocessor.
The official tradcpp page says the tool was written for historical uses of the C preprocessor on non-C input, because modern compiler-bundled preprocessors increasingly do not provide a traditional mode or preserve the behavior old build systems expect. The project deliberately keeps a narrow scope and does not try to become a full modern C89/C99/C11 preprocessor.
A distinctive implementation goal is whitespace preservation. The author calls out makefiles, old Emacs build logic, and imake as examples where rearranging whitespace can break legacy systems. tradcpp also includes a trace mode for diagnosing complex preprocessor use; the page says it was written to investigate an imake problem on Solaris.
The most explicit adoption history is in pkgsrc: the official page says pkgsrc, the NetBSD package system, has used tradcpp for these purposes since 2013. That makes tradcpp a package-system support tool rather than a broad end-user application.
In package-manager culture, tradcpp is used when a build recipe needs a traditional cpp that preserves old preprocessing behavior for files such as makefiles. Users are explicitly steered away from using it for normal modern C code.
tradcpp matters to package nerds because it is infrastructure for keeping old source packages buildable. It represents the unglamorous compatibility layer a portability framework like pkgsrc sometimes needs when upstream build systems rely on historical Unix behavior.
安全态势
narrow executable package without higher-risk signals.
绿色 风险 · 低 置信度 · appliance
在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。
可执行文件
| 命令 | 类型 | 暴露范围 | 备注 |
|---|---|---|---|
tradcpp | 可执行文件 | 已索引可执行文件 | 从本地可执行文件索引发现。 |
新鲜度
这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。
安装元数据
| 软件包键 | brew:tradcpp |
|---|---|
| 版本 | 0.5.3 |
| 软件包管理器 | Homebrew |
| 主页 | https://www.netbsd.org/~dholland/tradcpp/ |
| Bottle | 未记录 |
| 服务 | 未声明 |
源数据库匹配
匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。
tradcpp
nix profile install nixpkgs#tradcpptradcpp
sudo port install tradcpp来源线索
此页面由 av-web 从 scripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。
View the package source record on GitHub.