Jump to content
rudy999

Delphi 12.3 web install - I selected Android as well as Windows but did not install Android SDK NDK

Recommended Posts

I just finished updating from 12.2 to 12.3.

I selected Windows and Android (and IOS).

The installation seemed to download what was selected, but I could not compile or build for Android.  (win32 or win64 ok)..

The files I was expecting in the Catalog Repository were not there..

I manually downloaded (maybe a mistake) the Android SDK and NDK (via Android Studio, which I downloaded and installed..)

then tried to 'Edit SDK' in Rad Studio setting. No more exclamation marks, but clearly there is a mismatch somewhere..

 

I get this error message with a previously compiling app or a new project (Android 64)

Is it now a PATH issue?  - or should I 'reinstall' rad studio?

[DCC Error] E2597 ld.lld: error: unable to find library -ldl

ld.lld: error: unable to find library -lc
  ld.lld: error: unable to find library -lm
  ld.lld: error: unable to find library -landroid
  ld.lld: error: unable to find library -llog
  ld.lld: error: unable to find library -ljnigraphics
  ld.lld: error: unable to find library -lEGL
  ld.lld: error: unable to find library -lGLESv2

 

Back to square 1

Share this post


Link to post

I have the same issue.

All the paths in the SDK Manager are set to the default and there is no indication that any are invalid.

 

Would love to know how to fix it.

Share this post


Link to post

Hade the same. Use the Platform manager, deselect the Android SDK (Uninstall) it. After uninstall, select the checkbox and install the SDK again. 

Share this post


Link to post

gkobler-you mean platform manager in the install setup routine?

tks

Share this post


Link to post
59 minutes ago, rudy999 said:

platform manager

No, i mean that in delphi directly

image.thumb.png.cd3c463a4d9c85a627a7bbcf7dbeec94.png

 

image.thumb.png.df2a6dd0b492404ccf320b33733b06c5.png

 

Then uncheck the Android SDK, after uninstall it, check it again.

Share this post


Link to post

Ok, so something strange is going on my dev PC.

Un installing and re installing the platforms - the folders and files in the catalog repository for Android do NOT appear, though there are no errors during 'install'.

I have a test PC where I FIRST updated 12.2 to 12.3 and the Android folders and files were where they were supposed to be.

I COPIED them from that PC to my Dev PC and finally got it all working.

In 12.2 the FMX app for Android was looking for the Android SDK 25.2, now it is using Android SDK 35.02, as far as I can tell. That was probably part of the issue in regards to the ld.lld issue.

 

Now I am afraid when 12.3+ comes out....

Share this post


Link to post

Unistalling Android and reinstalling as @gkobler suggested did not work for me. I still get the same error.

 

Any other suggestions? 

Share this post


Link to post

Joker2350

You should report it to Codegear.

I think it is

https://supportforms.embarcadero.com/

 

Or if you can, do another install on another PC and see if you have the same issue, or not. If not

you 'could' do as I do and the copy the folders to the Catalog Repository...

HTH

Share this post


Link to post

I can now compile Android without error. After trying numerous things (uninstalling and reinstalling the Android framework within Rad Studio, manually installing the Android SDK and NDK), it turned out to be a single line in the project DPROJ file that was causing the issue.

 

The line was:

        <PlatformSDK Condition="'$(PlatformSDK)'=='' And '$(Platform)'=='Android64'">AndroidSDK34.0.4_64bit.sdk</PlatformSDK>

I don't know were this line came from, or why it was there, but removing it fixed the issue.

 

I hope that helps anyone else having this issue.

Share this post


Link to post

You have my empathy!  I have used Delphi since Delphi 4, and have not had as horrible a time installing as with the latest version!  The installer keeps putting incorrect values in the SDK manager entries, with little yellow triangles everywhere!  I have re-installed RadStudio 12.3 about 8 times now, with various combinations of options, and uninstalling various things first.  The entries in the SDK manager remained garbage!
 I finally resorted to looking for the various files whose locations are required, and manually entering them, including having to make a special directory for libclang_rt.builtins-arm-android.a.  The entries for 32-vit and for 64-bit are the same, and I don't know if that's ok.  At least all the little yellow triangles have disappeared.   I can now compile programmes, but they fail on linking, with the error message  "ild.lld error: unable to find library - ldl".  I can successfully connect to the Android device at last.

The dproj line you listed does not occur in my dproj files.

The delphi installer I used came from the .iso file download, "radstudio_12_esd_122017a.exe".  Any known errors in this?


Current SDK manager entries:

64-bit ones:

NDK Base Path
C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-NDK-23.0.55362.2017builtins-aarch64

lld.exe Location
C:\Program Files (x86)\Embarcadero\Studio\23.0\bin64\ld.lld.exe

llvm=strip.exe location
C:\Program Files (x86)\Embarcadero\Studio\23.0\bin64\llvm-strip.exe


libclang_rt.builtins-aarch64-android.a location
C:\Program Files (x86)\Embarcadero\Extras\libclang_rt.builtins-arm-android.a
(I had to make this subdirectory and put the required file, from a temp installation subdirectory,
into it, as this was the only copy  of that file on the machine.)

Delphi NDK library path:
C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.55362.2017\ndk\27.1.12297006\toolchains\llvm\prebuilt\windows-x86_64\sysroot\usr\lib\aarch64-linux-android\23;C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.55362.2017\ndk\27.1.12297006\toolchains\llvm\prebuilt\windows-x86_64\sysroot\usr\lib\aarch64-linux-android

32-bit ones:

NDK Base Path
C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-NDK-23.0.55362.2017

lld.exe Location
C:\Program Files (x86)\Embarcadero\Studio\23.0\bin64\ld.lld.exe

llvm=strip.exe location
C:\Program Files (x86)\Embarcadero\Studio\23.0\bin64\llvm-strip.exe

libclang_rt.builtins-aarch64-android.a location
C:\Program Files (x86)\Embarcadero\Extras\libclang_rt.builtins-arm-android.a

Delphi NDK library path:
C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.55362.2017\ndk\27.1.12297006\toolchains\llvm\prebuilt\windows-x86_64\sysroot\usr\lib\arm-linux-androideabi\23;C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.55362.2017\ndk\27.1.12297006\toolchains\llvm\prebuilt\windows-x86_64\sysroot\usr\lib\arm-linux-androideabi

Any ideas?

Chester Wilson

 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×