Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,15 @@ This repository uses the bdk-ffi repository as a git submodule. Here are useful
1. When initially cloning the repo, the `bdk-ffi` submodule will be empty locally. You can intitiate/populate the directory by using the `just submodule-init` command.
2. If you make local changes to the `bdk-ffi` directory while developing and want to hard delete all changes and return to the exact committed version hash of the bdk-ffi repo, use the `just submodule-reset` command.

## Prerequisites

Before building `bdkpython` locally, ensure you have installed the following tools:

- **Rust toolchain (`rustup`)**: Required to compile `bdk-ffi`. Install from [rustup.rs](https://rustup.rs/).
- **`uv`**: Fast Python package installer and resolver. Install from [Astral uv Docs](https://docs.astral.sh/uv/).
- **`just` (optional)**: Command runner used for repo tasks. Install via `cargo install just` or your system package manager.
- **Windows (C++ Build Tools)**: Install Visual Studio Build Tools with the *Desktop development with C++* workload (provides `link.exe` and MSVC toolchain required for `x86_64-pc-windows-msvc`).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This line I'm less clear on: I thought cargo had those for you by default.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

After looking into this, I propose this line instead:

- **`just`**: Command runner used for repo tasks. Install via `cargo install just` or your system package manager.

_Windows Users_
- **Windows**: Rust's `x86_64-pc-windows-msvc` target needs the MSVC toolchain and Windows SDK. `rustup-init` offers to install these for you; otherwise install Visual Studio Build Tools with the *Desktop development with C++* workload. The build scripts are bash, so run them from Git Bash.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Yes, you are right, the issue was that I personally have to install the just tool using cargo install just which definitely require the MSVC toolchain. I will update it as you suggested, that is better off recommeending installation of the msvc which solve most of the installation issues overhead.
image


## Local Testing and Usage

1. Run one of the build script (skip the submodule update if you are making local changes to the bdk-ffi submodule)
Expand Down
Loading