firebase / firebase/firebase-cpp-sdk
[Question] How to compile the Release build?
- 主要言語
- C++
- スター
- 326
- フォーク
- 137
- 平均マージ
- 3日 9時間
- マージ済み PR(30日)
- 5
説明
### [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: build locally
* Firebase C++ SDK version: 11.8.0
* Main Firebase Components in concern: Mainly analytics (Auth, Database, etc.)
* Other Firebase Components in use: -
* Platform you are using the C++ SDK on: Windows, VS 2019 (build tools v142) and Unreal Engine 4.27
* Platform you are targeting: Windows
### [REQUIRED] Please describe the question here:
After fullfilling the requirements, I run the build with these command
```
> mkdir firebase_analytics_build && cd firebase_analytics_build
> cmake -DCMAKE_BUILD_TYPE=Release -DOPENSSL_ROOT_DIR="C:\Users\herpi\Downloads\OpenSSL-3.3.0-Win-pc064\OpenSSL\OpenSSL\3.3.0" -A x64 ..
> cmake --build . --target firebase_analytics -DCMAKE_BUILD_TYPE=Release
```
The `lib` file is generated but it's always under the `Debug` prefix directory. In my case, this debug library will lead to this error while linking the library in my UE4 project.
```
firebase_app.lib(variant.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '2' doesn't match value '0' in SharedPCH.UnrealEd.ShadowErrors.h.obj
```
How to build both Release and Debug?
Thank you in advance.
コントリビューションガイド
調査の方向性
まず、Windows 上で CMAKE_BUILD_TYPE=Release を指定して firebase_analytics ターゲットの文書化された CMake configure および build コマンドを再現します。生成された Debug と Release の出力場所、および MSVC のイテレーターデバッグレベル設定を調査し、その後、両方の構成で対応する Unreal Engine ビルドと LNK2038 なしでリンクできるライブラリが生成されることを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cmake, cpp, unreal-engine
- 領域
- build-system
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100