The linker was removing the icu shim functions even exporting them. The unique solution that we found until now is to force the linking using the -u flag.
This is a temporary fix until we don't implement QCalls.
Fixes https://github.com/dotnet/runtime/issues/36685
This commit is contained in:
Thays Grazia 2020-05-21 06:29:14 -03:00 коммит произвёл GitHub
Родитель c1052b40b9
Коммит 45e20479ee
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
2 изменённых файлов: 12 добавлений и 2 удалений

Просмотреть файл

@ -1272,7 +1272,7 @@ retry_with_libcoreclr:
new_scope = g_strdup ("libcoreclr.dylib");
#else
#if defined(TARGET_ANDROID)
new_scope = g_strdup ("libmonosgen-2.0.so");
new_scope = g_strdup ("libruntime-android.so");
#else
new_scope = g_strdup ("libcoreclr.so");
#endif

Просмотреть файл

@ -13,4 +13,14 @@ target_link_libraries(
runtime-android
%NativeLibrariesToLink%
libz.so
log)
log
"-u GlobalizationNative_LoadICU"
"-u GlobalizationNative_GetLatestJapaneseEra"
"-u GlobalizationNative_ChangeCase"
"-u GlobalizationNative_CloseSortHandle"
"-u GlobalizationNative_GetLocales"
"-u GlobalizationNative_GetLocaleInfoInt"
"-u GlobalizationNative_GetLocaleTimeFormat"
"-u GlobalizationNative_ToUnicode"
"-u GlobalizationNative_NormalizeString"
"-u GlobalizationNative_GetTimeZoneDisplayName")