Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
joe.falchetto
Posts: 4
Joined: Thu 27 Apr 2017 08:01

Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Post by joe.falchetto » Mon 26 Jun 2017 16:30

I tested a simple project C++ with a UniConnection and SQLServerUniProvider and tryied to deploy it to Android platform but I received a lot of linker error like this one:

[ldandroid Error] C:\Users\Public\Documents\Embarcadero\Studio\19.0\CatalogRepository\AndroidNDK-9c_19.0.26309.314\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-ld.exe: C:\Program Files (x86)\Devart\UniDAC for RAD Studio 10.2\Lib\Android\libmsprovider250.a(Tds7ClassesUni.o):(.data+0x4c): error: undefined reference to '__init_record_TdsTypesUni'

I'm using RADSTUDIO Tokyo and UniDac 7.0.2
I added libmsprovider250.a file in my project too but without result..

The same project in Delphi works without problem.

thanks
Giovanni

azyk
Devart Team
Posts: 1119
Joined: Fri 11 Apr 2014 11:47
Location: Alpha Centauri A

Re: Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Post by azyk » Tue 27 Jun 2017 10:14

You should add two files for TSQLServerUniProvider - libtdsprovider250.a and libmsprovider250.a .

joe.falchetto
Posts: 4
Joined: Thu 27 Apr 2017 08:01

Re: Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Post by joe.falchetto » Tue 27 Jun 2017 14:44

In this simple project the problem was solved! Thank you!!

In another project where I'm using TVirtualTable and TVirtualQuery the link error is the follow:

[ldandroid Error] C:\Users\Public\Documents\Embarcadero\Studio\19.0\CatalogRepository\AndroidNDK-9c_19.0.26309.314\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-ld.exe: C:\Program Files (x86)\Devart\UniDAC for RAD Studio 10.2\Lib\Android\libvquery250.a(LiteStaticVirtual.o): in function Litestaticvirtual::lite_sqlite3PagerSetCodec(void*, void*, void*, void*, void*):LiteStaticVirtual(.text._ZN17Litestaticvirtual25lite_sqlite3PagerSetCodecEPvS0_S0_S0_S0_+0xe): error: undefined reference to 'lite_sqlite3PagerSetCodec'

thanks for your patience
Giovanni

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Post by MaximG » Tue 04 Jul 2017 07:20

When using UniDAC to develop applications for Android platform in IDE C++Builder RAD Studio 10.2 Tokyo perform the following steps :

- add the sqlite3.0 library to the project : [UniDAC install folder]\Lib\Android
- recompile the project

joe.falchetto
Posts: 4
Joined: Thu 27 Apr 2017 08:01

Re: Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Post by joe.falchetto » Wed 12 Jul 2017 17:43

Works perfect!!
Thanks a lot

Giovanni

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: Link error with SQLServerUniProvider, Radstudio Tokyo C++, platform ANDROID

Post by MaximG » Thu 13 Jul 2017 05:49

We are glad to see the problem resolved. Please don't hesitate to contact us with questions concerning UniDAC usage.

Post Reply