Porting software form x86...

El Barto.
Hello everyone, I hope I could get some help here, as my experience on
Linux is programming Java on x86 machines.

I need to develop an application for recognition of fingerprints by using a
SDK provided by the manufacturer of the USB scanner. This application
should run on Mini6410 or Mini210.

Now, this SDK has a device driver and an authentication library that takes
the image form the scanner and matches the fingerprints. This SDK is tested
on Linux Red Hot. The manufacturer support staff, tell me that if I need to
run my application on ARM platform they can provide me the driver source
code in order to compile it, targeting my Linux ARM platform and that the
authentication library should have no problem to run. They say they have
customers who have made this before sucessfully. My questions are:

1. Is it true, that a x86 library could run on Linux for ARM?.
2. Could this source code be compiled targeting Android?. If so, would the
Linux library run on android too?.
3. The manufacturer provide some Linux C++ sample application. If
recompiled, Should this run on embedded Linux.

Thanks for reading, and for any help.

Juergen Beisert
1) If this library is coded against POSIX (and I guess it is) there is no
difference in ARM or x86 environment. So, your library should smoothly
compile and run on your ARM system.
2) If you have the cross toolchain that created the other files already
running in your Android system: yes. If not, you are in trouble. You need a
consistent build environment to extend an existent run-time environment.
3) If they compile with your cross toolchain: yes. If not, you must adapt
them.

ferite
Thanks for your answer, Juergen.

What flavor of ARM Linux would make easier the job?. I have read Emdebian
is "binary compatible" with the PC Linux distro.

Juergen Beisert
I would recommend a cross build environment for your host, like buildroot
or our PTXdist. This will ensure your target will get a software deployment
which is consistent (=all components are made with the same toolchain, the
same library and so on). I don't know if it is possible to to do the same
for a binary distribution when you want to add your own selfmade software.
If you mix a binary distribution with your own selfmade software (cross
compiled with a different toolchain, than the remaining part of the system)
you will run into trouble.

El Barto.
Hi Juergen and community...

I received more info from the manufacturer of the USB scanner.

It turns that there is an special SDK targeted to embedded developments.
This SDK has been tested on TI OMAP 3530, 3730, 3503, 3703 at 1GHz and
FreeScale i.Mx515 at 1GHz. Now, although the manufacturer can provide me
source code for the drivers, they do not provide source code for the
authentication library for obvious reasons. My question is, if this library
has been tested on ARM Linux on OMAP and FreeScale processors, should it
work "out of the box" (without recompiling) on ARM Linux running over
Samsung S5PV210 processors?.

Juergen Beisert
Handling binary-only libraries is always a pain. Maybe you are in luck. Run
"readelf -a" on this binary library and see for what architecture this
library was compiled for. Your 210 should be off ARMv7 architecture.