Я запускаю на рабочем столе Ubuntu, и приложение компилируется нормально, когда я запускаю его как отдельное приложение dlang.< /p>
Для развертывания в качестве приложения для Android я могу скомпилировать его как библиотеку, на которую затем ссылаюсь в своем приложении для Android. Затем я копирую файл libmain.so в свой проект Android в Android Studio, запускаю эмулятор, собираю и запускаю.
Я продолжаю выдавать указанную выше библиотеку ошибок " libm.so.6" не найден, когда приложение пытается запуститься в эмуляторе.
Что касается других (редких) сообщений, которые я нашел при поиске в Google, я добавил -lm в проект в нескольких местах, но результат не меняется.
Я выполняю
- Android API 31
- ndk 27.0.11718104
- ldc2 1.38.0-git-4260031 (DMD v2.108.1, LLVM 16.0 .6)
- x86_64-linux-android31-clang
- Android Studio 2022.3.1
- Ubuntu 24.04 LTS
Код: Выделить всё
linux-vdso.so.1 (0x00007ffc955aa000)
libgtk3-nocsd.so.0 => /lib/x86_64-linux-gnu/libgtk3-nocsd.so.0 (0x00007b61dd748000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007b61dd65f000)
...
libdruntime-ldc-shared.so.108 => /home/brian/Documents/Programming/d/install-ldc/lib/libdruntime-ldc-shared.so.108 (0x00007b61dca9d000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007b61dca70000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007b61dc200000)
/lib64/ld-linux-x86-64.so.2 (0x00007b61dd76d000)
libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007b61dd574000)
...
Код: Выделить всё
"x86_64-linux-android":
{
switches = [
"-defaultlib=phobos2-ldc,druntime-ldc",
"-link-defaultlib-shared=false",
"-gcc=/home/infinityplusb/Android/Sdk/ndk/27.0.11718014/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android31-clang",
"-linker=/home/infinityplusb/Android/Sdk/ndk/27.0.11718014/toolchains/llvm/prebuilt/linux-x86_64/bin/ld.lld",
];
lib-dirs = [
"/home/infinityplusb/Android/Sdk/ndk/27.0.11718014/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/x86_64-linux-android/31",
"/usr/lib/x86_64-linux-gnu",
"/home/infinityplusb/Documents/Programming/android/ldc2-1.38.0-linux-x86_64/lib",
"/home/infinityplusb/Documents/Programming/ffmpeg/ffmpeg-kit/prebuilt/android-x86_64/ffmpeg/lib",
"%%ldcbinarypath%%/../lib-aarch64",
];
rpath = "%%ldcbinarypath%%/../lib-aarch64";
};
Подробнее здесь: https://stackoverflow.com/questions/786 ... -not-found
Мобильная версия