Skip to content

Conversation

Oppen
Copy link
Contributor

@Oppen Oppen commented Oct 16, 2025

Due to use of bindgen, RocksDB requires libclang to compile.
This was previously undocumented.

Due to use of `bindgen`, RocksDB requires `libclang` to compile.
This was previously undocumented.
@Oppen Oppen requested a review from a team as a code owner October 16, 2025 19:09
@Copilot Copilot AI review requested due to automatic review settings October 16, 2025 19:09
@github-actions github-actions bot added L1 Ethereum client L2 Rollup client labels Oct 16, 2025
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Document libclang as a prerequisite to build from source because RocksDB depends on bindgen, which requires libclang.

  • Add libclang to the prerequisites list
  • Note its association with RocksDB

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

## Prerequisites

- [Rust toolchain](https://www.rust-lang.org/tools/install) (use `rustup` for easiest setup)
- [libclang](https://clang.llvm.org/docs/index.html) (for RocksDB)
Copy link

Copilot AI Oct 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The prerequisite is underspecified and links to a generic Clang docs page. Please clarify that the libclang development package is required, link to bindgen’s requirements (the actual reason for the dependency), and give brief install hints and the LIBCLANG_PATH note.

Suggested change
- [libclang](https://clang.llvm.org/docs/index.html) (for RocksDB)
- **libclang development package** (required by [bindgen](https://rust-lang.github.io/rust-bindgen/requirements.html), which is used by RocksDB)
- On **Debian/Ubuntu**: `sudo apt install libclang-dev`
- On **Fedora**: `sudo dnf install clang-devel`
- On **macOS**: `brew install llvm` (and see [bindgen requirements](https://rust-lang.github.io/rust-bindgen/requirements.html#macos))
- If libclang is not found automatically, set the `LIBCLANG_PATH` environment variable to the directory containing `libclang.so`/`libclang.dylib`.

Copilot uses AI. Check for mistakes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

L1 Ethereum client L2 Rollup client

Projects

Status: No status
Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant