firebase / firebase/firebase-cpp-sdk

[Bug] Outdated/incomplete instructions for building on Windows

Open
#1,582 1 comment 4 reactions 0 assignees View on GitHub
needs-triage new type: question
Dominant language
C++
Stars
326
Forks
137
Avg merge
3d 9h
Merged PRs (30d)
5

Description

### [REQUIRED] Please fill in the following fields:

* Pre-built SDK from the [website](https://firebase.google.com/download/cpp) or open-source from this repo: open-source
* Firebase C++ SDK version: v11.10.0
* Main Firebase Components in concern: Auth
* Other Firebase Components in use: RemoteConfig
* Platform you are using the C++ SDK on: Windows
* Platform you are targeting: Windows

### [REQUIRED] Please describe the question here:

When trying to build the SDK on Windows I ran into multiple issues:

- Some components require the `patch` and `sed` command-line utilities during CMake configuration (see also #1451 and #1506) and must be installed e.g. via Chocolatey. This is not documented.
- The latest Python 3.12 no longer includes `distutils`, which is used by build scripts. As a workaround one has to install the `setuptools` package.
- Building without the OpenSSL dependency by setting the `FIREBASE_USE_BORINGSSL` CMake option to `ON` caused configuration errors, and building with OpenSSL also downloads BoringSSL during CMake configuration. Not sure if this is expected, but it would be nice to be able to build the SDK without the OpenSSL dependency.

It would be great if these points could be documented and/or fixed.

Contributor guide

Open the contributing guide

Research direction

Start with the Windows build instructions, CMake configuration, and the build scripts that use patch, sed, and Python distutils. Reproduce the reported configuration with Python 3.12 and the FIREBASE_USE_BORINGSSL option, then determine whether the documented prerequisites and dependency behavior match the current build. Done means the Windows requirements and any confirmed build fixes are clearly documented or tracked as separate fixes.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp, python
Domain
build-system, documentation, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.