What upper-level header files are really needed when using Tesseract API and what can be left out?

16 views
Skip to first unread message

Yuliana Zigangirova

unread,
Nov 24, 2018, 8:18:36 AM11/24/18
to tesseract-ocr
Hi everyone,
I am trying to understand what is a correct way to use Tesseract header files when using the upper-level Tesseract API.
Actually I want to minimize  the number of  includes as much as possible and to leave in my project
only really necessary upper-level headers.

In the comments to "apitypes.h"  I am reading the following:

// The types used by the API and Page/ResultIterator can be found in:
//   ccstruct/publictypes.h
//   ccmain/resultiterator.h
//   ccmain/pageiterator.h
// API interfaces and API users should be sure to include this file, rather
// than the lower-level one, and lower-level code should be sure to include
// only the lower-level file.

Does it mean that I need to add necessary includes into "apitypes.h"  first, such as "baseapi.h"
and than use only this header?  "apitypes.h" only includes "publictypes.h" for the moment,
which is surely not enough.
Do I need  ccstruct, ccmain and ccutil include headers? All of them?

Thanky you very much in advance for your help,
Yuliana

Zdenko Podobny

unread,
Nov 24, 2018, 9:33:37 AM11/24/18
to tesser...@googlegroups.com
If you install tesseract, all needed headers will be installed to specified/system location.
Referring headers directly to ccstruct etc. is simple bad design of you application.

Zdenko


so 24. 11. 2018 o 14:18 'Yuliana Zigangirova' via tesseract-ocr <tesser...@googlegroups.com> napísal(a):
--
You received this message because you are subscribed to the Google Groups "tesseract-ocr" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tesseract-oc...@googlegroups.com.
To post to this group, send email to tesser...@googlegroups.com.
Visit this group at https://groups.google.com/group/tesseract-ocr.
To view this discussion on the web visit https://groups.google.com/d/msgid/tesseract-ocr/f8391aaa-0282-4a81-9aea-2d8500a25be4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Yuliana Zigangirova

unread,
Nov 24, 2018, 9:57:35 AM11/24/18
to tesseract-ocr
Thank you for your answer. The problem is - I have an old Linux system,
where I need to link tesseract to my application.  I can not install
tesseract there.  So I thought I would
take libtesseract.a and the necessary headers and link it.
Could you tell me what is supposed to me a basic  minumum of
the headers for the external application?  You are right,  I want to  avoid
linking directly to subdirectories, that was exactly the purpose of
my question.
Thank you again,
Yuliana Zigangirova

Zdenko Podobny

unread,
Nov 25, 2018, 9:24:39 AM11/25/18
to tesser...@googlegroups.com
Your explanation is quite strange for me: you want to build application that use tesseract in environment where you can not build/install tesseract??? 

Anyway it your problem: installed header your can find here:

Minimum of the header will depend on maxim of tesseract usage ;-) e.g. capi.h header will be needed if you will use it C-API... ocrclass.h should be needed only in case you want to use progress/cancel function etc.


Zdenko


so 24. 11. 2018 o 15:57 'Yuliana Zigangirova' via tesseract-ocr <tesser...@googlegroups.com> napísal(a):
Reply all
Reply to author
Forward
0 new messages