e.blog

主にUnity/UE周りのことについてまとめていきます

Unityが起動しなくなってあれこれしたことを殴り書きしておく

概要

ある日突然、Unityが死んだ。

シーン読み込み時にフリーズして再起動したら、Unity自体が起動しなくなるという自体に遭遇。
結果的に4時間溶かしてなんとか解決した・・・。

ただ、正直謎が多すぎてこれで直るか分からないのだけど、同じ悩みを持っている人を助けられるかもしれないのでメモを残しておきます。

やったこと

ちなみにそのときに一番調べていた単語が「Native extension for iOS target not found」です。
これは、Unity Editorのログファイルに残されていた手がかりです。
(ちなみにログファイルはここ→ ~/Library/Logs/Unity/Editor.log

そのときのログファイル全文を残しておきます。

Initiating legacy licensing module
[Package Manager] Server::Start -- Port 61119 was selected
Launching external process: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/Server/UnityPackageManager

 COMMAND LINE ARGUMENTS:
/Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/MacOS/Unity
-projectpath
/Users/kazuyahiruma/MyDesktop/UnityProjects/hoge
-useHub
-hubIPC
-cloudEnvironment
production
-buildTarget
iOS
-hubSessionId
529ac9d0-f0ba-11e9-ba43-8bfa11da91e7

LICENSE SYSTEM [20191017 17:48:0] Next license update check is after 2019-10-18T07:36:42

Successfully changed project path to: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge
/Users/kazuyahiruma/MyDesktop/UnityProjects/hoge
Using Asset Import Pipeline V1.
Loading GUID <-> Path mappings...0.000048 seconds
Loading Asset Database...0.122003 seconds
AssetDatabase consistency checks...0.722986 seconds
[Package Manager] Done resolving packages in 1.14s seconds
[Package Manager] 
Registered 40 packages:
  Packages from [https://packages.unity.com]:
    com.unity.collab-proxy@1.2.16 (location: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Library/PackageCache/com.unity.collab-proxy@1.2.16)
    com.unity.ext.nunit@1.0.0 (location: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Library/PackageCache/com.unity.ext.nunit@1.0.0)
    com.unity.ide.rider@1.1.0 (location: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Library/PackageCache/com.unity.ide.rider@1.1.0)
    com.unity.ide.vscode@1.1.0 (location: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Library/PackageCache/com.unity.ide.vscode@1.1.0)
    com.unity.test-framework@1.0.13 (location: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Library/PackageCache/com.unity.test-framework@1.0.13)
    com.unity.textmeshpro@2.0.1 (location: /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Library/PackageCache/com.unity.textmeshpro@2.0.1)
  Built-in packages:
    com.unity.package-manager-ui@2.2.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.package-manager-ui)
    com.unity.timeline@1.1.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.timeline)
    com.unity.ugui@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.ugui)
    com.unity.modules.ai@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.ai)
    com.unity.modules.androidjni@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.androidjni)
    com.unity.modules.animation@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.animation)
    com.unity.modules.assetbundle@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.assetbundle)
    com.unity.modules.audio@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.audio)
    com.unity.modules.cloth@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.cloth)
    com.unity.modules.director@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.director)
    com.unity.modules.imageconversion@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.imageconversion)
    com.unity.modules.imgui@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.imgui)
    com.unity.modules.jsonserialize@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.jsonserialize)
    com.unity.modules.particlesystem@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.particlesystem)
    com.unity.modules.physics@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.physics)
    com.unity.modules.physics2d@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.physics2d)
    com.unity.modules.screencapture@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.screencapture)
    com.unity.modules.terrain@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.terrain)
    com.unity.modules.terrainphysics@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.terrainphysics)
    com.unity.modules.tilemap@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.tilemap)
    com.unity.modules.ui@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.ui)
    com.unity.modules.uielements@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.uielements)
    com.unity.modules.umbra@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.umbra)
    com.unity.modules.unityanalytics@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.unityanalytics)
    com.unity.modules.unitywebrequest@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.unitywebrequest)
    com.unity.modules.unitywebrequestassetbundle@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.unitywebrequestassetbundle)
    com.unity.modules.unitywebrequestaudio@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.unitywebrequestaudio)
    com.unity.modules.unitywebrequesttexture@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.unitywebrequesttexture)
    com.unity.modules.unitywebrequestwww@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.unitywebrequestwww)
    com.unity.modules.vehicles@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.vehicles)
    com.unity.modules.video@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.video)
    com.unity.modules.vr@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.vr)
    com.unity.modules.wind@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.wind)
    com.unity.modules.xr@1.0.0 (location: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/PackageManager/BuiltInPackages/com.unity.modules.xr)

[XR] No new subsystems found in resolved package list.
[Package Manager] Done registering packages in 0.05s seconds
Targeting platform: iOS
Refreshing native plugins compatible for Editor in 206.28 ms, found 6 plugins.
Preloading 0 native plugins for Editor in 0.00 ms.
IsTimeToCheckForNewEditor: Update time 1571299758 current 1571302083
Initialize engine version: 2019.2.3f1 (8e55c27a4621)
[XR] Discovering subsystems at path /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Resources/UnitySubsystems
[XR] Discovering subsystems at path /Users/kazuyahiruma/MyDesktop/UnityProjects/hoge/Assets
GfxDevice: creating device client; threaded=1
Initializing Metal device caps: Intel(R) Iris(TM) Plus Graphics 640
[EnlightenBakeManager] m_Clear = false;
Initialize mono
Mono path[0] = '/Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/Managed'
Mono path[1] = '/Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/MonoBleedingEdge/lib/mono/unityjit'
Mono config path = '/Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/MonoBleedingEdge/etc'
Using monoOptions --debugger-agent=transport=dt_socket,embedding=1,server=y,suspend=n,address=127.0.0.1:56155
Begin MonoManager ReloadAssembly
Registering precompiled unity dll's ...
Register platform support module: /Applications/Unity/Hub/Editor/2019.2.3f1/Unity.app/Contents/PlaybackEngines/MacStandaloneSupport/UnityEditor.OSXStandalone.Extensions.dll
Register platform support module: /Applications/Unity/Hub/Editor/2019.2.3f1/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.dll
Registered in 0.002006 seconds.
[usbmuxd] Start listen thread
[usbmuxd] Listen thread started
[usbmuxd] Send listen message
Native extension for iOS target not found

問題の一文はログの最後に出てくるやつですね。

どう解決したか

さて、どう解決したかですが、結論から書くと、問題がありそうなファイルをRenameしてみた、です。

問題のファイル(っぽいもの)はこちら↓

/Applications/Unity/Hub/Editor/2019.2.3f1/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.dll

iOS target not found と書いてあったのでこれかなと。
でやったことはこれをRenameしました。(要はこれを読み込ませないようにしてみたということ)

これをスキップさせたらどういうエラーが出るのかなーと思って。
が、結果は意図に反してなぜかUnity起動するという謎。ファイルあるときはnot foundなのに、ファイル自体Renameしたらなんで起動するんだ・・。

そしてさらに謎なのが、これで無事起動したあと、変更したファイル名を元に戻したら普通に起動するという。

とはいえ、もしこのあたりの問題で悩んでいる人がいたら上記を試してみてください。
ただ、あまりにも謎すぎるので直る保証は一切ないのであしからず・・・。

その他メモ

ちなみに、これも功を奏したのか分かりませんが、「Unityゲーム開発者ギルド」というSlackのコミュニティに質問したところ以下のような対応も教えてもらいました。
上記の方法でもダメな場合はこちらも試してみるといいかもしれません。

  • Unityを起動している場合は終了し、アンインストール
  • ~/Library/Unity/ を削除
  • /Library/Application Support/Unity/ にある .ulf 拡張子のファイルを削除
  • PCを再起動
  • Unityを再インストール。インストーラーが壊れている可能性があるため、インストーラーも再度ダウンロードする

ちなみに再インストールでもプチハマり。なんと、この前アップデートがあったばかりのMacOS Catalina の場合、普通の手順でインストーラからインストールしようとするとインストールできない旨のアラートが。

ただ、こちらの記事を見るとUnity Hubを経由してインストールすると行けるよ、とのこと。
DownloadページのUnity Hubで開くボタンからやると無事にインストールできました。