Open Ndshah82 opened 9 years ago
I also have the same problem: (versioning, errors and error-file follow).
Ruby: ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu]
Setting up libopenjp2-7:amd64 (2.1.0-2.1) ... Setting up liblept4 (1.72-3) ... Setting up libleptonica-dev (1.72-3) ... Setting up libtesseract3 (3.04.00-5+b1) ... Setting up libtesseract-dev (3.04.00-5+b1) ... Processing triggers for libc-bin (2.19-20) ...
Fetching: refining-0.0.5.5.gem (100%) Successfully installed refining-0.0.5.5 Fetching: call-me-0.0.2.3.gem (100%) Successfully installed call-me-0.0.2.3 Fetching: iso-639-0.2.5.gem (100%) Successfully installed iso-639-0.2.5 Fetching: ffi-extra-0.1.0.gem (100%) Successfully installed ffi-extra-0.1.0 Fetching: ffi-inline-0.0.4.3.gem (100%) Successfully installed ffi-inline-0.0.4.3 Fetching: tesseract-ocr-0.1.8.gem (100%) Successfully installed tesseract-ocr-0.1.8 Parsing documentation for call-me-0.0.2.3 Installing ri documentation for call-me-0.0.2.3 Parsing documentation for ffi-extra-0.1.0 Installing ri documentation for ffi-extra-0.1.0 Parsing documentation for ffi-inline-0.0.4.3 Installing ri documentation for ffi-inline-0.0.4.3 Parsing documentation for iso-639-0.2.5 Installing ri documentation for iso-639-0.2.5 Parsing documentation for refining-0.0.5.5 Installing ri documentation for refining-0.0.5.5 Parsing documentation for tesseract-ocr-0.1.8 Installing ri documentation for tesseract-ocr-0.1.8 Done installing documentation for call-me, ffi-extra, ffi-inline, iso-639, refining, tesseract-ocr after 1 seconds 6 gems installed
% tesseract.rb -h
/var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/compilers/gcc.rb:35:in compile': compile error: see logs at /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.log (CompilationError) from /var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders/c.rb:114:in
shared_object'
from /var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:90:in block in build' from /var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:87:in
instance_eval'
from /var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:87:in build' from /var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/inline.rb:54:in
singleton_inline'
from /var/lib/gems/2.1.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/inline.rb:39:in inline' from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:30:in
module:BaseAPI'
from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:27:in <module:C>' from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:25:in
module:Tesseract'
from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:25:in <top (required)>' from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in
require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in require' from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c.rb:89:in
<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in require' from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in
require'
from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/api.rb:26:in <top (required)>' from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in
require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in require' from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract-ocr.rb:35:in
<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in require' from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in
require'
from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract.rb:25:in <top (required)>' from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in
require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in require' from /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/bin/tesseract.rb:3:in
<top (required)>'
from /usr/local/bin/tesseract.rb:23:in load' from /usr/local/bin/tesseract.rb:23:in
cat /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.log g++ -shared -fPIC -o /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.so /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp -ltesseract 2>>/tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.log /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb: In function ‘void setimage(tesseract::TessBaseAPI, const Pix)’: /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:171:22: error: invalid conversion from ‘const Pix’ to ‘Pix’ [-fpermissive] api->SetImage(pix); ^ In file included from /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp:1:0: /usr/include/tesseract/baseapi.h:354:8: note: initializing argument 1 of ‘void tesseract::TessBaseAPI::SetImage(Pix)’ void SetImage(Pix_ pix); ^ /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb: In function ‘bool processpages(tesseract::TessBaseAPI, const char, STRING)’: /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:183:55: error: no matching function for call to ‘tesseract::TessBaseAPI::ProcessPages(const char&, NULL, int, STRING&)’ return api->ProcessPages(filename, NULL, 0, output); ^ In file included from /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp:1:0: /usr/include/tesseract/baseapi.h:541:8: note: candidate: bool tesseract::TessBaseAPI::ProcessPages(const char, const char, int, tesseract::TessResultRenderer_) bool ProcessPages(const char* filename, const char* retryconfig, ^ /usr/include/tesseract/baseapi.h:541:8: note: no known conversion for argument 4 from ‘STRING’ to ‘tesseract::TessResultRenderer_’ /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb: In function ‘bool processpage(tesseract::TessBaseAPI, Pix, int, const char, STRING)’: /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:189:71: error: no matching function for call to ‘tesseract::TessBaseAPI::ProcessPage(Pix&, int&, const char&, NULL, int, STRING&)’ return api->ProcessPage(pix, pageindex, filename, NULL, 0, output); ^ In file included from /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp:1:0: /usr/include/tesseract/baseapi.h:556:8: note: candidate: bool tesseract::TessBaseAPI::ProcessPage(Pix, int, const char, const char, int, tesseract::TessResultRenderer) bool ProcessPage(Pix pix, int pageindex, const char* filename, ^ /usr/include/tesseract/baseapi.h:556:8: note: no known conversion for argument 6 from ‘STRING’ to ‘tesseract::TessResultRenderer_’ g++ -shared -fPIC -o /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.so /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp -ltesseract 2>>/tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.log /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb: In function ‘void setimage(tesseract::TessBaseAPI, const Pix)’: /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:171:22: error: invalid conversion from ‘const Pix’ to ‘Pix’ [-fpermissive] api->SetImage(pix); ^ In file included from /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp:1:0: /usr/include/tesseract/baseapi.h:354:8: note: initializing argument 1 of ‘void tesseract::TessBaseAPI::SetImage(Pix)’ void SetImage(Pix_ pix); ^ /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb: In function ‘bool processpages(tesseract::TessBaseAPI, const char, STRING)’: /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:183:55: error: no matching function for call to ‘tesseract::TessBaseAPI::ProcessPages(const char&, NULL, int, STRING&)’ return api->ProcessPages(filename, NULL, 0, output); ^ In file included from /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp:1:0: /usr/include/tesseract/baseapi.h:541:8: note: candidate: bool tesseract::TessBaseAPI::ProcessPages(const char, const char, int, tesseract::TessResultRenderer_) bool ProcessPages(const char* filename, const char* retryconfig, ^ /usr/include/tesseract/baseapi.h:541:8: note: no known conversion for argument 4 from ‘STRING’ to ‘tesseract::TessResultRenderer_’ /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb: In function ‘bool processpage(tesseract::TessBaseAPI, Pix, int, const char, STRING)’: /var/lib/gems/2.1.0/gems/tesseract-ocr-0.1.8/lib/tesseract/c/baseapi.rb:189:71: error: no matching function for call to ‘tesseract::TessBaseAPI::ProcessPage(Pix&, int&, const char&, NULL, int, STRING&)’ return api->ProcessPage(pix, pageindex, filename, NULL, 0, output); ^ In file included from /tmp/.ffi-inline-1000/3d702cf4f51902a978aedfd62b0e04b75d8512ea.cpp:1:0: /usr/include/tesseract/baseapi.h:556:8: note: candidate: bool tesseract::TessBaseAPI::ProcessPage(Pix, int, const char, const char, int, tesseract::TessResultRenderer) bool ProcessPage(Pix pix, int pageindex, const char* filename, ^ /usr/include/tesseract/baseapi.h:556:8: note: no known conversion for argument 6 from ‘STRING’ to ‘tesseract::TessResultRenderer_’
I found a fix for an instance of this compilation error which may help here. Details in another thread https://github.com/meh/ruby-tesseract-ocr/issues/50#issuecomment-149695558
I'm running into compilation errors when using the tesseract-ocr gem on my heroku ruby environment. My ruby version is 2.2.2 and ubuntu version is 14.04. Can you shed some light on how to resolve this issue?
Here is the tesseract buildpack I am using: https://github.com/matteotiziano/heroku-buildpack-tesseract
Here is a snapshot of my tesseract version:
tesseract: /app/vendor/tesseract-ocr/lib/libtiff.so.5: no version information available (required by /app/vendor/tesseract-ocr/lib/liblept.so.4) tesseract 3.03 leptonica-1.70 libgif 4.1.6(?) : libjpeg 8d : libpng 1.2.50 : libtiff 4.0.3 : zlib 1.2.8 : webp 0.4.0
Here is a snapshot of my error logs: 2015-09-08T17:14:01.370398+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/compilers/gcc.rb:35:in'
2015-09-08T17:14:01.370452+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in '
2015-09-08T17:14:01.370463+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in '
2015-09-08T17:14:02.341851+00:00 heroku[web.1]: Process exited with status 1
2015-09-08T17:14:02.364725+00:00 heroku[web.1]: State changed from starting to crashed
compile': compile error: see logs at /tmp/.ffi-inline-4045/3cdb4edaddbba892937d7cffd2d6b0edeadc3d5a.log (CompilationError) 2015-09-08T17:14:01.370416+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders/c.rb:114:in
shared_object' 2015-09-08T17:14:01.370418+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:90:inblock in build' 2015-09-08T17:14:01.370422+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:87:in
instance_eval' 2015-09-08T17:14:01.370423+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:87:inbuild' 2015-09-08T17:14:01.370424+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/inline.rb:54:in
singleton_inline' 2015-09-08T17:14:01.370425+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/ffi-inline-0.0.4.3/lib/ffi/inline/inline.rb:39:ininline' 2015-09-08T17:14:01.370427+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract/c.rb:34:in
module:C' 2015-09-08T17:14:01.370428+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract/c.rb:31:in<module:Tesseract>' 2015-09-08T17:14:01.370429+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract/c.rb:29:in
<top (required)>' 2015-09-08T17:14:01.370430+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract/api.rb:26:inrequire' 2015-09-08T17:14:01.370433+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract/api.rb:26:in
<top (required)>' 2015-09-08T17:14:01.370434+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract-ocr.rb:35:inrequire' 2015-09-08T17:14:01.370435+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/tesseract-ocr-0.1.7/lib/tesseract-ocr.rb:35:in
<top (required)>' 2015-09-08T17:14:01.370436+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:76:inrequire' 2015-09-08T17:14:01.370437+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:76:in
block (2 levels) in require' 2015-09-08T17:14:01.370440+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:72:ineach' 2015-09-08T17:14:01.370441+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:72:in
block in require' 2015-09-08T17:14:01.370442+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:61:ineach' 2015-09-08T17:14:01.370445+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:61:in
require' 2015-09-08T17:14:01.370446+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler.rb:134:inrequire' 2015-09-08T17:14:01.370449+00:00 app[web.1]: from /app/config.ru:5:in
block ininstance_eval' 2015-09-08T17:14:01.370455+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in
initialize' 2015-09-08T17:14:01.370458+00:00 app[web.1]: from /app/config.ru:innew' 2015-09-08T17:14:01.370460+00:00 app[web.1]: from /app/config.ru:in
eval' 2015-09-08T17:14:01.370466+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in
new_from_string' 2015-09-08T17:14:01.370469+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:40:inparse_file' 2015-09-08T17:14:01.370473+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:299:in
build_app_and_options_from_config' 2015-09-08T17:14:01.370474+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:208:inapp' 2015-09-08T17:14:01.370476+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:336:in
wrapped_app' 2015-09-08T17:14:01.370479+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:272:instart' 2015-09-08T17:14:01.370482+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:147:in
start' 2015-09-08T17:14:01.370485+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/bin/rackup:4:in<top (required)>' 2015-09-08T17:14:01.370573+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/bin/rackup:23:in
load' 2015-09-08T17:14:01.370575+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/bin/rackup:23:in `