Menu

Testcase ... Caused an ERROR

Help
2016-02-28
2016-11-03
  • Albretch Mueller

    I am using right now knoppix 7.0.2 which comes with:

    $ which tesseract
    /usr/bin/tesseract

    $ tesseract --version
    tesseract 3.02

    Also I have the latest oracle's jdk and a reasonable recent version on ant:

    $ which java
    /media/sda1/inst/sw/java/jdk-8u66-linux-i586/bin/java
    $ java -version
    java version "1.8.0_66"
    Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
    Java HotSpot(TM) Server VM (build 25.66-b17, mixed mode)

    $ which ant
    /media/sda1/inst/sw/java/ant/1.9.6/bin/ant
    $ ant -version
    Apache Ant(TM) version 1.9.6 compiled on June 29 2015

    I downloaded Tess4J:

    $ ls -l Tess4J-3.0-src.zip
    -rw-r----- 1 knoppix knoppix 61843550 Feb 28 01:24 Tess4J-3.0-src.zip
    $ md5sum -b Tess4J-3.0-src.zip
    ba009fb0f2a75ba81443f84f9d001d9c *Tess4J-3.0-src.zip

    and unzipped it. Then, this is what I got when I followed the instructions in:

    Tess4J/readme.html

    PRFX=$(basename "$(pwd)")""$(date +%Y%m%d%H%M%S)
    _OFL="${_PRFX}.log"
    _ERR="${_PRFX}.errs"

    time( ant test ) >> "${_OFL}" 2>&1

    wc -l "${_OFL}"
    tail -n 30 "${_OFL}"

    cat "${_OFL}" | grep "ERROR" > "${_ERR}"

    wc -l "${_ERR}"
    head -n 10 "${_ERR}"
    tail -n 10 "${_ERR}"

    $ pwd
    /media/sda1/inst/sw/OCR/Tess4J/Tess4J

    $ PRFX=$(basename "$(pwd)")""$(date +%Y%m%d%H%M%S)
    $ _OFL="${_PRFX}.log"
    $ _ERR="${_PRFX}.errs"
    $
    $ time( ant test ) >> "${_OFL}" 2>&1
    $
    $ wc -l "${_OFL}"
    1188 Tess4J_20160228162002.log
    $ tail -n 30 "${_OFL}"
    [junit] Invalid calling convention 63
    [junit] java.lang.IllegalArgumentException: Invalid calling convention 63
    [junit] at com.sun.jna.Native.createNativeCallback(Native Method)
    [junit] at com.sun.jna.CallbackReference.<init>(CallbackReference.java:239)
    [junit] at com.sun.jna.CallbackReference.getFunctionPointer(CallbackReference.java:413)
    [junit] at com.sun.jna.CallbackReference.getFunctionPointer(CallbackReference.java:395)
    [junit] at com.sun.jna.Function.convertArgument(Function.java:541)
    [junit] at com.sun.jna.Function.invoke(Function.java:305)
    [junit] at com.sun.jna.Library$Handler.invoke(Library.java:236)
    [junit] at com.sun.proxy.$Proxy7.gsapi_set_stdio(Unknown Source)
    [junit] at org.ghost4j.Ghostscript.initialize(Ghostscript.java:323)
    [junit] at net.sourceforge.tess4j.util.PdfUtilities.convertPdf2Png(Unknown Source)
    [junit] at net.sourceforge.tess4j.util.PdfUtilities.convertPdf2Tiff(Unknown Source)
    [junit] at net.sourceforge.tess4j.util.PdfUtilitiesTest.testConvertPdf2Tiff(PdfUtilitiesTest.java:57)
    [junit]
    [junit]
    [junit] Test net.sourceforge.tess4j.util.PdfUtilitiesTest FAILED

    test-report:

    -post-test-run:

    BUILD FAILED
    /media/sda1/inst/sw/OCR/Tess4J/Tess4J/nbproject/build-impl.xml:1320: Some tests failed; see details above.

    Total time: 7 seconds

    real 0m7.363s
    user 0m12.067s
    sys 0m0.633s
    $
    $ cat "${_OFL}" | grep "ERROR" > "${_ERR}"
    $
    $ wc -l "${_ERR}"
    101 Tess4J_20160228162002.errs

    $ head -n 10 "${_ERR}"
    [junit] Testcase: testTessBaseAPIAnalyseLayout(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testTessBaseAPIAnalyseLayout(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testChoiceIterator(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testChoiceIterator(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testTessBaseAPIGetUTF8Text(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testTessBaseAPIGetUTF8Text(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testOSD(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testOSD(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testTessBaseAPIGetUTF8Text_Pix(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR
    [junit] Testcase: testTessBaseAPIGetUTF8Text_Pix(net.sourceforge.tess4j.TessAPI1Test): Caused an ERROR

    $ tail -n 10 "${_ERR}"
    [junit] Testcase: testCreateDocuments(net.sourceforge.tess4j.TesseractTest): Caused an ERROR
    [junit] Testcase: testDoOCR_UNLV_Zone_File(net.sourceforge.tess4j.TesseractTest): Caused an ERROR
    [junit] Testcase: testGetSegmentedRegions(net.sourceforge.tess4j.TesseractTest): Caused an ERROR
    [junit] Testcase: testDoOCR_PDF(net.sourceforge.tess4j.TesseractTest): Caused an ERROR
    [junit] Testcase: testDoOCR_File(net.sourceforge.tess4j.TesseractTest): Caused an ERROR
    [junit] Testcase: testSplitPdf(net.sourceforge.tess4j.util.PdfUtilitiesTest): Caused an ERROR
    [junit] Testcase: testGetPdfPageCount(net.sourceforge.tess4j.util.PdfUtilitiesTest): Caused an ERROR
    [junit] Testcase: testMergePdf(net.sourceforge.tess4j.util.PdfUtilitiesTest): Caused an ERROR
    [junit] Testcase: testConvertPdf2Png(net.sourceforge.tess4j.util.PdfUtilitiesTest): Caused an ERROR
    [junit] Testcase: testConvertPdf2Tiff(net.sourceforge.tess4j.util.PdfUtilitiesTest): Caused an ERROR
    $

    It seems to be some sort of configuration error.

    Why is going on?

    How do I troubleshoot those errors?

    thanks
    lbrtchx

     
  • Albretch Mueller

    I forgot to mention that if I try to use the jar file:

    Tess4J/dist/tess4j-3.0.jar

    I get:

    $ java -jar "tess4j-3.0.jar"
    no main manifest attribute, in tess4j-3.0.jar

    lbrtchx

     
  • Quan Nguyen

    Quan Nguyen - 2016-02-29

    Looks like a compatibility issue. Tess4J 3.0 goes with Tesseract 3.04. Tesseract 3.02 requires Tess4J 1.5.

    http://tess4j.sourceforge.net/changelog.html

     
  • Mathias Conradt

    Mathias Conradt - 2016-11-01

    I am getting above error ("Invalid calling convention 63") with this version stack:

    • tesseract 3.04.01
    • leptonica-1.73
    • GPL Ghostscript 9.18 (2015-10-05)
    • Tess4J 3.2.1 (also tried Tess4J 3.0.0)

    on Ubuntu 16 Xenial. Error log: http://pastebin.com/C8c5qkCt

     

    Last edit: Mathias Conradt 2016-11-01
  • Quan Nguyen

    Quan Nguyen - 2016-11-03

    It was resolved by downgrading JNA to 4.1.0 version (see Issue #35).

     

Log in to post a comment.