Building Box3D Static Library for WebAssembly (Emscripten & CMake) Сборка статической библиотеки Box3D для WebAssembly (Emscripten и CMake)
A guide to compiling Box3D source code into a static library (libbox3d.a) for WebAssembly on Windows using Emscripten and CMake. Руководство по компиляции исходного кода Box3D в статическую библиотеку (libbox3d.a) для WebAssembly на Windows с помощью Emscripten и CMake.
Step 1: Download Box3D Source Code Шаг 1: Скачивание исходного кода Box3D
Check and download the latest release (v0.1.0) directly from the official Box3D repository on GitHub:
Проверьте и скачайте последнюю версию (v0.1.0) напрямую со страницы релизов Box3D на GitHub:
Open Box3D Releases (GitHub) Открыть релизы Box3D (GitHub) Direct Download v0.1.0 (.zip) Прямое скачивание v0.1.0 (.zip)
Extract the downloaded archive to a convenient directory on your machine. Распакуйте скачанный архив в удобную директорию на вашем компьютере.
Step 2: Create the Build Script Шаг 2: Создание скрипта сборки
In the root directory of the extracted Box3D source folder, create an empty file named build-wasm-static.bat and paste the following content into it:
В корневой директории распакованного исходного кода Box3D создайте пустой файл build-wasm-static.bat и вставьте в него следующее содержимое:
@echo off
set BUILD_DIR=build-wasm-static
if exist %BUILD_DIR% rmdir /s /q %BUILD_DIR%
mkdir %BUILD_DIR%
cd %BUILD_DIR%
call emcmake cmake .. ^
-G "MinGW Makefiles" ^
-DCMAKE_BUILD_TYPE=Release ^
-DCMAKE_INSTALL_PREFIX=C:/libs/box3d-0.1.0-wasm ^
-DBUILD_SHARED_LIBS=OFF ^
-DBOX3D_SAMPLES=OFF ^
-DBOX3D_UNIT_TESTS=OFF
call emmake cmake --build . --config Release --parallel --target install
BOX3D_SAMPLES=OFF and BOX3D_UNIT_TESTS=OFF ensures only the core physics engine is built, excluding desktop window samples. Make sure the Emscripten environment is activated in your Command Prompt (via emsdk_env.bat) before executing the script.
Флаги BOX3D_SAMPLES=OFF и BOX3D_UNIT_TESTS=OFF обеспечивают сборку только ядра физического движка без оконных демо-приложений. Убедитесь, что окружение Emscripten активировано в командной строке (через emsdk_env.bat) перед запуском скрипта.
Step 3: Run and Compile Шаг 3: Запуск и сборка
Run build-wasm-static.bat via Command Prompt (CMD) with Emscripten activated so you can observe the compilation output in the console. Once completed, your compiled static library (libbox3d.a) along with header files will be installed in the destination path set by CMAKE_INSTALL_PREFIX (C:/libs/box3d-0.1.0-wasm).
Запустите build-wasm-static.bat через командную строку (CMD) с активированным Emscripten, чтобы отслеживать процесс сборки в консоли. После завершения скомпилированная статическая библиотека (libbox3d.a) вместе с заголовочными файлами будет установлена по пути, указанному в CMAKE_INSTALL_PREFIX (C:/libs/box3d-0.1.0-wasm).
Step 4: Next Steps Шаг 4: Следующие шаги
Now that you have compiled the Box3D WebAssembly static library, you can integrate it into your CMake Emscripten projects: Теперь, когда вы собрали статическую библиотеку Box3D для WebAssembly, вы можете подключить её в ваши CMake-проекты на Emscripten:
add_library(Box3D_Static STATIC IMPORTED)
set_target_properties(Box3D_Static PROPERTIES
IMPORTED_LOCATION "${BOX3D_DIR}/lib/libbox3d.a"
INTERFACE_INCLUDE_DIRECTORIES "${BOX3D_DIR}/include"
)
target_link_libraries(app PRIVATE Box3D_Static)
Support My Work Поддержать проект
If these tutorials helped you, consider buying me a coffee! Если эти туториалы вам помогли, вы можете поддержать автора.
Sberbank (Russia only) Сбербанк (только для РФ)
Direct transfer via phone number (Russia only) Перевод по номеру телефона (только для РФ)
USDT TRC20
Support via Cryptocurrency Поддержка криптовалютой