Show HN:Seastar——具有Cargo特性的C/C++构建和依赖管理器
Show HN: Seastar – Build and dependency manager for C/C++ with Cargo's features

原始链接: https://github.com/AI314159/Seastar

Seastar是一个为C、C++以及未来可能支持Rust和Zig的新型构建系统,旨在像Rust的Cargo一样实现快速原型设计和迭代。它优先考虑易用性,尤其针对初学者,解决了C语言开发中经常遇到的复杂问题。Seastar允许跨多种语言进行无缝编译。 使用Cargo构建和运行非常简单,用户可以通过在`cargo run`后指定`--build`或`--run`来快速构建或运行示例项目。用户需要在`example/Seastar.toml`文件中配置编译器路径。 Seastar目前尚处于早期开发阶段,不建议用于生产环境。但是,未来开发路线图已提供,欢迎感兴趣的用户关注代码库以获取更新。欢迎关注项目以支持进一步的开发。

一位十几岁的开发者 AI314159 正在开发 Seastar,这是一个受 Rust 的 Cargo 启发的 C/C++ 构建系统和依赖管理器。其目标是提供一个比 CMake 等现有系统更简单、基于 TOML 配置的替代方案。Seastar 目前支持编译、链接、依赖管理和简单的模板化,但仍处于早期 alpha 阶段。 Hacker News 的讨论帖重点关注了一些关键问题和建议:需要通过解决特定问题来与现有方案区分开来;处理多线程和依赖版本等复杂的现实场景;Seastar 与 ScyllaDB 的 Seastar 框架可能存在命名冲突;以及最终实现项目自举(用 Seastar 构建 Seastar)。一些评论者建议参考 Bazel 和 Buck2,另一些评论者则认为 C/C++ 的依赖管理已经被 Hunter、vcpkg 或系统包管理器等工具充分解决了。一个主要问题是,将 Rust/Cargo 作为构建 C/C++ 的依赖项可能会提高入门门槛。开发者对反馈持开放态度,并希望未来与其他工具和 CMake 项目兼容。
相关文章

原文

Seastar is a fast, extensible build system for C, C++, and maybe soon, Rust and Zig as well. I believe that it should be easy to make, prototype, and iterate upon designs. While C is still one of our most widely used languages, it makes it hard to create programs easily, especially for beginners. Instead, Seastar aims to be more like Rust's tooling with cargo, but supporting seamless compilation across more languages.

Seastar is very simple to build and run. Assuming you have Cargo and Rust installed, clone the repository, cd into the example folder, and run cargo run -- build to run Seastar and build the example project, or cargo run -- run to run the example project. Check example/Seastar.toml to make sure that you have the compiler installed and correctly set in that file.

Seastar is still in a very early state, and thus I wouldn't recommend using it currently for anything serious. Below, however, you can see my roadmap, and if you want to get updates, you can watch this repository.

If you find this project cool and want to see more , please consider leaving a star! It supports the development of this project and is really helpful.

联系我们 contact @ memedata.com