🙄

【UE4/UE5】パッケージ化失敗パターン

2022/03/27に公開

パッケージ化失敗が起きる度、その原因と対処法を書き留めていきたいと思います。

ERROR: Cook failed.

コンパイルエラーが原因のパターン

パッケージングに失敗し、エディターのアウトプットログにエラー文が表示されていました。

UATHelper: パッケージ化 (Windows (64-bit)): ERROR: Cook failed.
UATHelper: パッケージ化 (Windows (64-bit)):        (see C:\Users\username\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_4.26\Log.txt for full exception trace)
UATHelper: パッケージ化 (Windows (64-bit)): AutomationTool exiting with ExitCode=25 (Error_UnknownCookFailure)
UATHelper: パッケージ化 (Windows (64-bit)): BUILD FAILED

ログファイルは以下のパスでも確認できます。
"/プロジェクト名/Saved/Logs/"

アウトプットログに示された以下の文のとおりに、該当のファイルを見てみました。

(see C:\Users\username\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_4.26\Log.txt for full exception trace)

ファイルの下の方まで行くと何やらコンパイルエラーを起こしているような記述がありました。
そういえば、ほったらかしにしてたコンパイルエラーがあったのを思い出しました。コンパイルエラーを修正し、再度パッケージ化したらうまくいきました。

構造体をいじった際のエラー

UATHelper: パッケージ化 (Windows): LogProperty: Error: FStructProperty::Serialize Loading: Property 'StructProperty /Game/プロジェクト名/Widget/構造体が使われているクラス'. Unknown structure.

解決

エラーが出てるファイルを開いてコンパイルし直したら、パッケージ化できました。

LogLinker: Error: ○○ has an inappropriate outermost, it was probably saved with a deprecated outer (file: ../../../../

https://forums.unrealengine.com/t/cant-package-game-has-an-inappropriate-outermost/389549/21

Project contains multiple Game targets

別のプロジェクトをクローンで複製した際に問題が発生したのか、以下のようなログが表示され、パッケージ化に失敗したことがありました。

UATHelper: パッケージ化 (Windows): Project contains multiple Game targets (プロジェクト名(A), プロジェクト名(B)) but no DefaultGameTarget is set in the [/Script/BuildSettings.BuildSettings] section of DefaultEngine.ini

解決

Intermediateフォルダの削除するとパッケージ化に成功しました。

Discussion