Mezzofanti – Install&Run Tutorial
(Android phone – application, how-to)
This tutorial shows you how to run the Mezzofanti application from your Android SDK:
1. Download and install Android SDK
2. Download and install Android NDK
(optional) read our post on how to interface C/C++ with Java, with example on Tesseract, here.
3. Download Mezzofanti source code and patches
Note: from now on we will consider the ndk installed in [ndk_path]
4. Create directory “tesseract” in [ndk_path]/sources
5. Copy Tesseract 2.03 in [ndk_path]/sources/tesseract. Copy them directly, for example “Makefile” should be seen directly in [ndk_path]/sources/tesseract.
6. Unzip all downloaded files (step 3), in the directory [ndk_path]/sources/tesseract
7. In [ndk_path]/apps make a symbolic link to “mezzofanti_java_code”
After this step, the directory /sources/tesseract should look like:
-rw-r–r– 1 User None 170 Jul 8 14:38 AUTHORS
-rwxr-xr-x 1 User None 12916 Jul 8 14:38 Android-multiple-libs.mk
-rwxr-xr-x 1 User None 5997 Jul 9 17:40 Android.mk
-rwxr-xr-x 1 User None 71 Jul 9 15:35 Application.mk
-rw-r–r– 1 User None 17751 Jul 8 14:38 BUILD
-rw-r–r– 1 User None 1058 Jul 8 14:38 COPYING
-rw-r–r– 1 User None 3014 Jul 8 14:38 ChangeLog
-rw-r–r– 1 User None 9236 Jul 8 14:38 INSTALL
-rw-r–r– 1 User None 1223 Jul 8 14:38 LICENSE
-rw-r–r– 1 User None 933 Jul 8 14:38 Makefile.am
-rw-r–r– 1 User None 45 Jul 8 14:38 NEWS
-rw-r–r– 1 User None 33 Jul 8 14:38 OWNERS
-rw-r–r– 1 User None 5014 Jul 8 14:38 README
-rw-r–r– 1 User None 8913 Jul 8 14:38 ReleaseNotes
-rw-r–r– 1 User None 286 Jul 8 14:38 StdAfx.cpp
-rw-r–r– 1 User None 778 Jul 8 14:38 StdAfx.h
-rw-r–r– 1 User None 7309 Jul 8 14:38 acinclude.m4
-rw-r–r– 1 User None 33298 Jul 8 14:38 aclocal.m4
drwxr-xr-x+ 2 User None 0 Jul 8 14:38 aspirin
drwxr-xr-x+ 2 User None 0 Aug 31 18:35 ccmain
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 ccstruct
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 ccutil
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 classify
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 config
-rwxr-xr-x 1 User None 10209 Jul 8 14:38 configure.ac
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 cutil
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 dict
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 dlltest
drwxr-xr-x+ 2 User None 0 Jul 8 14:38 doc
drwxr-xr-x+ 2 User None 0 Jul 8 14:38 helium
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 image
drwx——+ 3 User None 0 Aug 28 10:28 java
drwx——+ 9 User None 0 Sep 1 17:22 mezzofanti_java_code
-rwx——+ 1 User None 42136 May 29 21:54 liblog.so
-rwxr-xr-x 1 User None 437 Jul 8 14:38 makemoredists
drwxr-xr-x+ 3 User None 0 Jul 8 14:38 neural_networks
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 pageseg
-rwxr-xr-x 1 User None 2140 Jul 8 14:38 runautoconf
drwxr-xr-x+ 6 User None 0 Aug 31 18:39 tessdata
-rw-r–r– 1 User None 9200 Jul 8 14:38 tessdll.cpp
-rw-r–r– 1 User None 38429 Jul 8 14:38 tessdll.dsp
-rw-r–r– 1 User None 5421 Jul 8 14:38 tessdll.h
-rwxr-xr-x 1 User None 159480 Jul 8 14:38 tessdll.vcproj
-rwxr-xr-x 1 User None 38795 Jul 8 14:38 tesseract.dsp
-rwxr-xr-x 1 User None 2117 Jul 8 14:38 tesseract.dsw
-rwxr-xr-x 1 User None 4709 Jul 8 14:38 tesseract.sln
-rw-r–r– 1 User None 5905 Jul 8 14:38 tesseract.spec
-rwxr-xr-x 1 User None 125592 Jul 8 14:38 tesseract.vcproj
-rw-r–r– 1 User None 560 Sep 1 17:36 test
drwxr-xr-x+ 3 User None 0 Aug 28 10:28 testing
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 textord
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 training
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 viewer
drwxr-xr-x+ 2 User None 0 Aug 28 10:28 wordrec
8. Patch the Tesseract files, with this Tesseract_ccmain_patch.zip (found on the google code). Also do copy over the Android.mk file, over the original one in order to be able to compile the code.
9. In Eclipse, import the Mezzofanti project.
enjoy













Hello, Mezzofanti looks like a very potential project.
While I compile this project, I found the source lack of apps/tesseract/Application.mk or something that can’t make me proceed, the error message is:
$ make APP=tesseract
Android NDK: Building for application ‘tesseract’
make: *** No rule to make target `tesseract’, needed by `ndk-app-tesseract’. Stop.
Dear user,
thank you for your feedback, please download the Application.mk file from the google code website (featured section) – http://code.google.com/p/mezzofanti/
Thank you.
Enjoy using Mezzofanti!
IT Wizard
@IT Wizard
It really looks like an exciting project, but I have some trouble building it.
I’ve followed your instructions, but it seems like Android.mk which was downloaded from the “featured downloads” sections isn’t working. I used Tesseract 2.03, patched its ccmain, but still it’s not compiling due to files that are missing.
For example, it can’t find the file “ccutil/cprintf.cpp” – and I also can’t find such file anywhere.
I’ll appreciate if you could assist me with it.
Many Thanks,
Alon
Hi Alon
ccutil/cprintf.cpp is part of Tesseract, so you probably didn’t copy tesseract and mezzofanti files in the appropriate directories,
thus the mk file cannot find them. In order to avoid this just copy the files in corresponding directories as indicated in the tutorial on the website.
Best regards.