libFireDACMSSQLDriver.a not found

I am evaluating Embarcadero C++ builder XE8 (30 day trial version) and am experiencing a problem with FireDAC components.
I have a simple application with a button and a TFDConnection component on the main form (Form1).
The buttonclick event handler sets the TFDConnection's Connected property  to true;
I am using C++ NOT Delphi

This compiles and builds with Windows32 platform selected but does not with an android platform selected.
the compiler gives error messages when compilation for Android platform is selected:

unable to find static library: libfireDACODBCDriver.a
and
unable to find static library: libFireDACMSSQLDriver.a

I have searched the C: drive on the PC system for the files and they are not there.

Has anyone else had this problem and solved it ?
LVL 2
Roger AlcindorAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

jimyXCommented:
> I have searched the C: drive on the PC system for the files and they are not there.

These are generated files, you need to make sure you enable the option of generating them.

I do not have XE8 to test but searching for this issue under embarcadero docwiki:
To enable generating static package library:
To toggle the generation of these optional files, use the Generate static package library (.lib) option in Project > Options > C++ Linker.


Package Static Library File (*.lib, *.a):
RAD Studio generates a package static library file:

    When you build a Delphi package for iOS Device or Android.
    When you build a Delphi package for a desktop platform and you use the "Generate all C++Builder files (including package libs)" value for the C/C++ Output file generation option in Project > Options > Delphi Compiler > Output - C/C++.
    When you build a C++ package and you enable the Generate static package library (.lib) option in Project > Options > C++ Linker.

A package static library file is a static library file generated from a package. You use a static library in place of an import library when your application does not use run-time packages. See Building Static Packages.

The file name of your package static library file is:

    <package>.lib for 32-bit Windows.
    <package>.a for 64-bit Windows and Mac OS X.
    lib<package>.a for iOS Device and Android.

        Note: You can not generate a package static library file for iOS Simulator.

When you build your package that meets the requirements, your package static library file is generated by default into the following folder:

    For 32-bit Windows: C:\Users\Public\Documents\Embarcadero\Studio\16.0\Bpl
    For other platforms in Delphi and 64-bit Windows in C++: C:\Users\Public\Documents\Embarcadero\Studio\16.0\Bpl\<platform>
    For other platforms in C++: C:\Users\Public\Documents\Embarcadero\Studio\16.0\Bpl\<platform>\<build configuration>

HTH
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Roger AlcindorAuthor Commented:
I have looked at the linker options as you suggest but there seems to be no such option in XE8.
I will check further on docwiki, I have also generated a support case in EDN and am waiting for a response.
The options in XE8 that I get are shown below:

Embarcadero XE8 Linker options for Android apps
0
Roger AlcindorAuthor Commented:
The files FireDACMSSQLDriver.lib and FireDACODBCDriver.lib are bot found in the  following folders
C:\Program Files (x86)\Embarcadero\Studio\16.0\lib\android\debug
and
C:\Program Files (x86)\Embarcadero\Studio\16.0\lib\android\release

So on the face of it all that's needed is that the compiler options to generate the Android .a library file
0
Become a CompTIA Certified Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

Roger AlcindorAuthor Commented:
It would seem that MSSQL drivers and ODBC drivers for Android need to be purchased as a Client/server Add-on Pack and are not included with any Trial version of XE8.
I am still waiting for a response from Embarcadero Development network but I suspect that this will be the case.
0
jimyXCommented:
> It would seem that MSSQL drivers and ODBC drivers for Android need to be purchased as a Client/server Add-on Pack are not included with any Trial version of XE8.

Most likely the limitation is related to the trail version, as you suggested.

Certain characteristic are only available in Full version (even after that still dependent on edition licensed, i.e Starter, Professional, Enterprise, Ultimate and Architect).

Let's see what response you get from edn.
0
Roger AlcindorAuthor Commented:
It seems that Embarcadero do nor provide FireDAC drivers for MSSQL on the Android platform ?
The EDN response was as follows:
"
I am sorry but this is expected behaviour. FireDAC on mobile platforms only supports InterBase and SQLite. One possibility would be to create a Datasnap or EMS server running on a Windows machine and have the C++ Builder app call this  

The only way I know to directly access MSSQL on Android would be to use third party components. See http://www.winsoft.sk/ajdbc.htm. This uses JDBC to call into MSSQL. They only work on Android so could not be used in a single source solution.
"
This surprises me as the compiler clearly looks for the android library and also references a header file that it can't find.
I'm not impressed by this response but I have no choice to accept it. The sales blurb on EXE certainly doesn't mention this so beware if you intend to purchase EX8 on the understanding that it can be used to develop mobile applications that directly access MSSQL.
0
Roger AlcindorAuthor Commented:
Very useful information which helped my understanding
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Android

From novice to tech pro — start learning today.