firebase / firebase/firebase-unity-sdk

[Bug] Windows 10 and prior crashes due to missing icu.dll

Open
#1,471 7 comments 0 reactions 0 assignees View on GitHub
api: core desktop production type: feature request
Dominant language
C#
Stars
320
Forks
60
Avg merge
13h 32m
Merged PRs (30d)
13

Description

### Description

A game using Firebase (I'm using Firebase 13.7.0) won't work on some older versions of Windows 10 and prior due to a missing native Windows DLL called icu.dll.

I've temporarily solved this issue by including that DLL in the \Plugins\x86_64 folder, alongside the others .dlls from Firebase. Players are able to play the game with that DLL, however some Steamdeck users, which uses Linux + Proton emulation, are unable to play if I manually include icu.dll next to the other Firebase dlls. It seems that Proton doesn't like that and make the game crashes.

So I either:
- Don't include the .DLL so Steamdeck and Linux emulators users can play but old Windows users cannot play.
- Include the .DLL so old Windows can play, but the game crashes on Steamdeck and Linux emulators users.

According a user from another issue:

> FirebaseCppApp 11 uses function getTimeZone in **icu.dll** (according Dependency Walker), that is missing on OS prior windows10.

https://github.com/firebase/firebase-unity-sdk/issues/793#issuecomment-1838629229

It seems to be the case with Firebase 13.x.x

### Reproducing the issue

Run a standalone IL2CPP build (not sure if it's important, but that's my case) using Firebase 13.7.0 on an outdated Windows 10 or older version.

### Firebase Unity SDK Version

13.7.0

### Unity editor version

6000.3.14f1

### Installation Method

.unitypackage

### Problematic Firebase Component(s)

Storage, Remote Config, Analytics, Crashlytics, Firestore, Functions, Authentication

### Targeted Platform(s)

Desktop

### Unity editor platform

Windows

### Scripting Runtime

IL2CPP

### Release Distribution Type

Pre-built SDK from https://firebase.google.com/download/unity

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.