firebase / firebase/firebase-cpp-sdk

[Question] How to compile the Release build?

オープン
#1,628 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
needs-triage new type: question
主要言語
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

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。