Сборка компилятора DirectXShader для Android ⇐ C++
-
Гость
Сборка компилятора DirectXShader для Android
Я хочу скомпилировать компилятор шейдеров DirectX для Android (мне нужен dxcompiler.so). В репозитории я нашел Android.cmake и какой-то «минималистичный» способ сборки. Поскольку файл был добавлен 7 лет назад, он сильно устарел. Я немного поискал в Google, но не нашел ничего связанного. Есть ли у кого-нибудь опыт реализации проекта?
Редактирование 1: О воспроизводимом примере:
[*]клонировать репозиторий git -> https://github.com/microsoft/DirectXShaderCompiler [*]перейдите в cmake/platforms/Android.cmake [*]откройте файл. В верхнем разделе есть "минимальный" пример. [*]выполните действия
Нет ничего о дополнительных флагах cmake. Не получается (Ubuntu 22.04).
Редактирование 2: Все, что происходит, использует CMakeLists.txt по умолчанию в корне проекта
[*]Что я сделал (первая попытка): [*]Windows: выполните utils\hct\hctshortcut.js [*]Windows: откройте utils\hct\hctbuild.cmd -> rem echo off [*]Windows: запустите «hctbuild.cmd -vs2022 -spirv» в консоли hct. [*]Windows: используйте команду cmake [*]Linux: используйте команду cmake и измените генератор на «Unix Makefiles» вместо Visual Studio. [*]Linux: укажите набор инструментов Android через CMAKE_TOOLCHAIN_FILE $NDK/build/cmake/android.toolchain.cmake
Не работает (или, по крайней мере, работает, но терпит неудачу, потому что пытается скомпилировать инструменты с помощью ndk и пытается их выполнить, но это эльфы Android). Единственное, что я сделал, это отключил кросс-компиляцию
[*]Как указано в Android.cmake [*]при первой команде cmake происходит сбой Я думаю, идея состоит в том, чтобы собрать все инструменты для хост-системы, а затем собрать целевые библиотеки, используя ранее созданные инструменты и кросс-компиляцию.
Я хочу скомпилировать компилятор шейдеров DirectX для Android (мне нужен dxcompiler.so). В репозитории я нашел Android.cmake и какой-то «минималистичный» способ сборки. Поскольку файл был добавлен 7 лет назад, он сильно устарел. Я немного поискал в Google, но не нашел ничего связанного. Есть ли у кого-нибудь опыт реализации проекта?
Редактирование 1: О воспроизводимом примере:
[*]клонировать репозиторий git -> https://github.com/microsoft/DirectXShaderCompiler [*]перейдите в cmake/platforms/Android.cmake [*]откройте файл. В верхнем разделе есть "минимальный" пример. [*]выполните действия
Нет ничего о дополнительных флагах cmake. Не получается (Ubuntu 22.04).
Редактирование 2: Все, что происходит, использует CMakeLists.txt по умолчанию в корне проекта
[*]Что я сделал (первая попытка): [*]Windows: выполните utils\hct\hctshortcut.js [*]Windows: откройте utils\hct\hctbuild.cmd -> rem echo off [*]Windows: запустите «hctbuild.cmd -vs2022 -spirv» в консоли hct. [*]Windows: используйте команду cmake [*]Linux: используйте команду cmake и измените генератор на «Unix Makefiles» вместо Visual Studio. [*]Linux: укажите набор инструментов Android через CMAKE_TOOLCHAIN_FILE $NDK/build/cmake/android.toolchain.cmake
Не работает (или, по крайней мере, работает, но терпит неудачу, потому что пытается скомпилировать инструменты с помощью ndk и пытается их выполнить, но это эльфы Android). Единственное, что я сделал, это отключил кросс-компиляцию
[*]Как указано в Android.cmake [*]при первой команде cmake происходит сбой Я думаю, идея состоит в том, чтобы собрать все инструменты для хост-системы, а затем собрать целевые библиотеки, используя ранее созданные инструменты и кросс-компиляцию.
Мобильная версия