Versioning of Binaries

Reference for Unreal Engine's BuildID system, which mitigates potential errors that may result from outdated DLL files.


Unreal Engine's BuildID system mitigates potential errors that may result from outdated DLL files. This system not only prevents crashes or failed library linkage, but also hard-to-track bugs that may arise from stale binaries, by loading only DLLs that were compiled at the same time as the executable file itself. The Build ID is typically generated automatically at compile-time, producing a new, unique value every time the Engine is built. However, you can override it with a manually specified value.

Automatically-Generated Build ID

At build time, every output directory that contains at least one compiled DLL receives a JSON file with the ".modules" extension, such as "UE4Editor.modules". This file lists each Module in the directory and the associated DLL for that Module, as well as a GUID for the build itself. Every time the Engine compiles, it generates a new GUID, so that DLLs from other compilation sessions will be recognizable, and the Engine can ignore them. When using source control to maintaining a binary build, you must check in the executable, all DLLs, and their associated ".modules" files together to ensure that the Build ID matches.

Manually-Specified Build ID

It is possible to force your Build ID to a specific value. You can accomplish this by adding a BuildId entry (as a string variable) to your Build/Build.version JSON file, but it is not recommended, as it removes the check to prevent using incompatible Modules. It is particularly easy to run outdated code if using a forced Build ID with Plugins that may be shared between multiple Projects.

Выбрать тему

Добро пожаловать на новый сайт документации Unreal Engine 4!

Мы работаем над множеством новых функций, включая систему обратной связи, чтобы вы могли рассказать нам, о том, что мы делаем. Этот вариант не совсем готов для использования в конечном релизе, поэтому перейдите на форум обратной связи по документации, чтобы рассказать нам о проблемах с этой страницей или написать нам о любых проблемах, с которыми вы сталкиваетесь в работе с документацией.

Мы обязательно сообщим вам, когда новая система будет запущена.

Отправить отзыв