linking error about libicu.so and libandroidicu.so on android 13 (no such files) lazarus / 43-Android ---------------------------------------------------------------------- Key-Real · 2023-01-22 16:53 I'm trying to compile a native app on my tablet with android 13 and termux. I use fpc 3.2.2 for aarch64 for Android. I have installed the libicu and libicu-static packages, its the version 72.1 I searched for libicu.so, there is no one on my system. what to do? fpc gives me: Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i Linking test/data/data/com.termux/files/usr/bin/ld.bfd: warning: libicu.so, needed by /system/lib64//libharfbuzz_ng.so, not found (try using -rpath or -rpath-link)/data/data/com.termux/files/usr/bin/ld.bfd: warning: libandroidicu.so, needed by /system/lib64//libandroid_runtime.so, not found (try using -rpath or -rpath-link)/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libandroid_runtime.so: undefined reference to `u_getInt PropertyMaxValue_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termu x/files/usr/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `XzUnpacker_SetOutBuf'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `uregex_matches_an droid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld. bfd: /system/lib64//libunwindstack.so: undefined reference to `XzUnpacker_Code'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libandroid_runtime.so: undefined reference to `u_charMi rror_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/ bin/ld.bfd: /system/lib64//libandroid_runtime.so: undefined reference to `u_charType_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/ files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `OpenSSL_add_all_algorithms'/data/data/com.termux/files/usr/bin/ld. bfd: /system/lib64//libsqlite.so: undefined reference to `HMAC_CTX_cleanup'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `uscript_getS hortName@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubrk_close_andro id@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bfd : /system/lib64//libsqlite.so: undefined reference to `EVP_CIPHER_CTX_cleanup'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `EVP_CIPHER_key_length'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `HMAC_CTX_init'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucnv_getNextUChar_ android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/l d.bfd: /system/lib64//libunwindstack.so: undefined reference to `XzUnpacker_Construct'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libpdfium.so: undefined reference to `u_isalnum@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libpdfium.so: undefined reference to `u_toupper@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `EVP_CIPHER_iv_length'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_setPara_an droid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld. bfd: /system/lib64//libandroid_runtime.so: undefined reference to `u_g etIntPropertyValue_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.ter mux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `uregex_close_android@LIBANDROIDICU_EXTERNAL_1'/data/data /com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_open_android@LIBANDROIDICU_EXTERNAL_1'/d ata/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `u_getCombini ngClass@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ucol_setAttribute _android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ ld.bfd: /system/lib64//libmediadrm.so: undefined reference to `mediame trics_setUid@LIBMEDIAMETRICS_1'/data/data/com.termux/files/usr/bin/ld. bfd: /system/lib64//libmedia.so: undefined reference to `ucsdet_detect All_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/b in/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `u _getIntPropertyMaxValue@LIBICU_31'/data/data/com.termux/files/usr/bin/ ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ucol_strc oll_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/b in/ld.bfd: /system/lib64//libminikin.so: undefined reference to `utext _close_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/us r/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ul oc_addLikelySubtags_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.te rmux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `uloc_canonicalize_android@LIBANDROIDICU_EXTERNAL_1'/data /data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `uscript_getScript_android@LIBANDROIDICU_EXTERN AL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `Crc64GenerateTable'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `u_charMirror@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `u_hasBinaryPrope rty_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/b in/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ubrk_f irst_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/ bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ucol_ strcollIter_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/fil es/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubrk_following_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.ter mux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `u_strToUTF8_android@LIBANDROIDICU_EXTERNAL_1'/data/data/ com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `u_foldCase_android@LIBANDROIDICU_EXTERNAL_1'/d ata/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `unorm2_getNF CInstance@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucnv_open_android@ LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libpdfium.so: undefined reference to `u_isalpha@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucsdet_getName_and roid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.b fd: /system/lib64//libsqlite.so: undefined reference to `uregex_open_a ndroid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld .bfd: /system/lib64//libandroid_runtime.so: undefined reference to `u_ charDirection_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/f iles/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucsdet_open_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux /files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `uregex_setText_android@LIBANDROIDICU_EXTERNAL_1'/data/da ta/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `EVP_cleanup'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `u_strToUpper_andr oid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bf d: /system/lib64//libmedia.so: undefined reference to `ucnv_convertEx_ android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/l d.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `u_countChar32@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `unorm2_getRawDec omposition_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/file s/usr/bin/ld.bfd: /system/lib64//libmediadrm.so: undefined reference to `mediametrics_create@LIBMEDIAMETRICS_1'/data/data/com.termux/files/ usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to ` ubrk_open_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files /usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_setClassCallback_android@LIBANDROIDICU_EXTERNAL_1'/data/data/co m.termux/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucsdet_setText_android@LIBANDROIDICU_EXTERNAL_1'/data/da ta/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_getParaLevel_android@LIBANDROIDICU_EXTER NAL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `uloc_toLanguageT ag_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bi n/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `uiter_s etUTF8_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/us r/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `CrcGenerateTable'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ucol_open_android @LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `u_isspace_android @LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `unorm2_getNFDIns tance_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr /bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `u_e rrorName_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/ usr/bin/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `unorm2_getRawDecomposition@LIBICU_31'/data/data/com.termux/files/u sr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `u brk_isBoundary_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/ files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ubrk_current_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termu x/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucnv_close_android@LIBANDROIDICU_EXTERNAL_1'/data/data/c om.termux/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucsdet_close_android@LIBANDROIDICU_EXTERNAL_1'/data/data /com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `ucol_close_android@LIBANDROIDICU_EXTERNAL_1'/d ata/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libmedia.so: undefined reference to `ucsdet_getConfidence_android@LIBANDROIDICU_EXT ERNAL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `XzUnpacker_Free'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libpdfium.so: undefined reference to `u_isspace@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `Xzs_ReadBackward'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubrk_next_androi d@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_getVisualR un_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bi n/ld.bfd: /system/lib64//libmediadrm.so: undefined reference to `media metrics_setCString@LIBMEDIAMETRICS_1'/data/data/com.termux/files/usr/b in/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `u norm2_composePair@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd : /system/lib64//libmediadrm.so: undefined reference to `mediametrics_ delete@LIBMEDIAMETRICS_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libpdfium.so: undefined reference to `u_tolower@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_close_andr oid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld.bf d: /system/lib64//libunwindstack.so: undefined reference to `Xzs_GetNumBlocks'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `EVP_MD_size'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `uloc_forLanguage Tag_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/b in/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `Xzs_Construct'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `uscript_getS cript@LIBICU_31'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `XzUnpacker_P repareToRandomBlockDecoding'/data/data/com.termux/files/usr/bin/ld.bfd : /system/lib64//libmedia.so: undefined reference to `ucsdet_detect_an droid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld. bfd: /system/lib64//libminikin.so: undefined reference to `ubidi_count Runs_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/ bin/ld.bfd: /system/lib64//libsqlite.so: undefined reference to `u_str ToLower_android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/u sr/bin/ld.bfd: /system/lib64//libunwindstack.so: undefined reference to `Xzs_Free'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `utext_openUChars _android@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ ld.bfd: /system/lib64//libsqlite.so: undefined reference to `EVP_CIPHER_block_size'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libmediadrm.so: undefined reference to `mediametrics_se lfRecord@LIBMEDIAMETRICS_1'/data/data/com.termux/files/usr/bin/ld.bfd: /system/lib64//libminikin.so: undefined reference to `ubrk_setUText_an droid@LIBANDROIDICU_EXTERNAL_1'/data/data/com.termux/files/usr/bin/ld. bfd: /system/lib64//libharfbuzz_ng.so: undefined reference to `u_getIntPropertyValue@LIBICU_31'test.pas(116,20) Error: Error while linking ---------------------------------------------------------------------- Key-Real · 2023-01-22 21:41 I found all this files at: /opt/android-ndk/toolchains/llvm/prebuilt/linux- x86_64/sysroot/usr/lib/aarch64-linux-android/33 on my linux mashine. now it compiles, but I can't verify that this works correct at this moment. ---------------------------------------------------------------------- Seenkao · 2023-01-22 23:10 По всему, что вы написали, непонятно что вы хотите сделать. Если просто запустить файл из консоли, как обычное консольное приложение, то запускайте его как обычно в Linux. Если вы хотите запустить графическое приложение, то здесь всё гораздо сложнее. Вам нужны примеры того, как запускали такие приложения из консоли. Потому что консоль не будет считаться графическим сервером (как минимум не должно считаться). Если вы хотите создать приложение для любого Android то надо создавать APK-файл в любом случае. И для этого лучше создавать приложение через java-код и вызывать необходимые нативные методы. Google translate: From what you wrote, it's not clear what you want to do. If you just run the file from the console, like a normal console application, then run it as usual in Linux. If you want to run a graphical application, then everything is much more complicated here. You need examples of how such applications were launched from the console. Because the console will not be considered a graphical server (at least it should not be). If you want to create an application for any Android, then you need to create an APK file anyway. And for this it is better to create an application through java code and call the necessary native methods.