I installed the tesseract-ocr gem (0.1.5).
Dependencies are also established (tesseract / 3.04.00 and leptonica / 1.72)
Mac OS X Yosemity
When I do rake db:migrate an error appears:
rake aborted! CompilationError: compile error: see logs at /var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.log /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/compilers/gcc.rb:35:in `compile' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders/c.rb:114:in `shared_object' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:90:in `block in build' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:87:in `instance_eval' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/builders.rb:87:in `build' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/inline.rb:54:in `singleton_inline' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/ffi-inline-0.0.4.3/lib/ffi/inline/inline.rb:39:in `inline' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:30:in `<module:BaseAPI>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:27:in `<module:C>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:25:in `<module:Tesseract>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:25:in `<top (required)>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `block in require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:in `load_dependency' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c.rb:83:in `<top (required)>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `block in require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:in `load_dependency' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/api.rb:26:in `<top (required)>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `block in require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:in `load_dependency' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract-ocr.rb:35:in `<top (required)>' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `each' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `block in require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `each' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `require' /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/bundler-1.10.6/lib/bundler.rb:134:in `require' /Users/user/work/project/config/application.rb:17:in `<top (required)>' /Users/user/work/project/Rakefile:4:in `<top (required)>'
In the magazine:
g++ -dynamic -bundle -fPIC -o /var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.dylib /var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.cpp -ltesseract 2>>/var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.log /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:171:10: error: no matching member function for call to 'SetImage' api->SetImage(pix); ~~~~~^~~~~~~~ /usr/local/include/tesseract/baseapi.h:354:8: note: candidate function not viable: 1st argument ('const Pix *') would lose const qualifier void SetImage(Pix* pix); ^ /usr/local/include/tesseract/baseapi.h:341:8: note: candidate function not viable: requires 5 arguments, but 1 was provided void SetImage(const unsigned char* imagedata, int width, int height, ^ /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:183:49: error: cannot initialize a parameter of type 'tesseract::TessResultRenderer *' with an lvalue of type 'STRING *' return api->ProcessPages(filename, NULL, 0, output); ^~~~~~ /usr/local/include/tesseract/baseapi.h:542:63: note: passing argument to parameter 'renderer' here int timeout_millisec, TessResultRenderer* renderer); ^ /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:189:65: error: cannot initialize a parameter of type 'tesseract::TessResultRenderer *' with an lvalue of type 'STRING *' return api->ProcessPage(pix, page_index, filename, NULL, 0, output); ^~~~~~ /usr/local/include/tesseract/baseapi.h:558:40: note: passing argument to parameter 'renderer' here TessResultRenderer* renderer); ^ . g++ -dynamic -bundle -fPIC -o /var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.dylib /var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.cpp -ltesseract 2>>/var/folders/xg/g9n7qvns5z1gsr_yjh09n1nm0000gn/T/.ffi-inline-501/d2f8bb8a1867b800ff8ad69a3b850c91521b3760.log /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:171:10: error: no matching member function for call to 'SetImage' api->SetImage(pix); ~~~~~^~~~~~~~ /usr/local/include/tesseract/baseapi.h:354:8: note: candidate function not viable: 1st argument ('const Pix *') would lose const qualifier void SetImage(Pix* pix); ^ /usr/local/include/tesseract/baseapi.h:341:8: note: candidate function not viable: requires 5 arguments, but 1 was provided void SetImage(const unsigned char* imagedata, int width, int height, ^ /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:183:49: error: cannot initialize a parameter of type 'tesseract::TessResultRenderer *' with an lvalue of type 'STRING *' return api->ProcessPages(filename, NULL, 0, output); ^~~~~~ /usr/local/include/tesseract/baseapi.h:542:63: note: passing argument to parameter 'renderer' here int timeout_millisec, TessResultRenderer* renderer); ^ /Users/user/.rvm/gems/ ruby-2.2.2@project /gems/tesseract-ocr-0.1.5/lib/tesseract/c/baseapi.rb:189:65: error: cannot initialize a parameter of type 'tesseract::TessResultRenderer *' with an lvalue of type 'STRING *' return api->ProcessPage(pix, page_index, filename, NULL, 0, output); ^~~~~~ /usr/local/include/tesseract/baseapi.h:558:40: note: passing argument to parameter 'renderer' here TessResultRenderer* renderer); ^
How can I solve it?
Update: This does not duplicate the question. This does not help. Error setting OCR Tesseract in gems in rails
source share