-
Notifications
You must be signed in to change notification settings - Fork 9.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error while running of Red Hat- DotProductAVX can't be used on Android #1113
Comments
So the build process did not add the code needed for AVX => |
The Tesseract version in the output from |
I have compiled tesseract from source. |
I used following commands to build the project. It is working fine on ubuntu 16.04 but fails on Red Hat when tesseract function is called. `sudo apt-get install autoconf automake libtool wget http://www.leptonica.org/source/leptonica-1.74.tar.gz tar -zxvf leptonica-1.74.tar.gz git clone git@gitlab.com:VisionX/core/libs/extern/tesseract.git |
Could you please also add the output from the Tesseract configure / make? |
~/tesseract$ ./configure --enable-debug Configuration is done. $ make Training tools can be build and installed (after building of tesseract) with: $ make training |
So your compiler supports |
Tesseract was built successfully. When i try to again make it, i get the following output. ~/tesseract$ LDFLAGS="-L/usr/local/lib" CFLAGS="-I/usr/local/include" make |
Run |
Actually i debuged my code and came to know that, program is throwing this error on this particular line Any idea about that>? |
That's expected. Could you please try to get more information from the build (see my previous comment)? |
Yes it is taking time. i will share the result shortly |
TesseractBuildInformation.TXT |
Output after using |
Thank you. I suggest to rebuild with latest sources from git. Don't forget to run ./autogen.sh before starting a new build. |
Actually it is built on my client server and i don't have rights to build the Tesseract library again. Is there any other work around?? |
After running /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /usr/local/lib/libtesseract.so.4) |
@AzkaGilani : did you solve this? |
There is a simple fix to this whole thing. Rather than having the Tesseract code abort if AVX is detected but not compiled in, put the directives in the compiled code so that it is never detected if it is not compiled in. Not sure why the source code wasn't written this way. Here is how the simddetect.cpp module should look: `/////////////////////////////////////////////////////////////////////// #include "simddetect.h" #undef X86_BUILD #if defined(X86_BUILD) SIMDDetect SIMDDetect::detector; // If true, then AVX has been detected. // Constructor. |
@willus, that's correct and can be even simplified further, but needs a little bit more code to set |
I have now created a pull request (#2135) to address this issue. |
@stweil, thank you. I agree that it could be simplified, and I re-did my version a few minutes later almost exactly the same way. I don't know C++ well enough--do declared booleans automatically default to false? I don't see where the avx_available_ boolean, for example, is initially declared as false. |
@AzkaGilani, I assume that the issue is solved in Git master, so I close this issue. Please report if there is still a problem. |
Yes, global variables are set automatically to 0 or false if they did not get an explicit initial value. |
I have used tesseract in my project. The project has been deployed on Red Hat server. It comiples fines on ubuntu and when i compile the same program in Red Hat it gives run time error: "DotProductAVX can't be used on Android." I have found other issues relating on internet similar to this, but the problem is that i can't update tesseract version or can not even rebuild it.
Is there any other solution by which i can solve this??
Should i make some change in my C++ code?
tesseract --version gives the following output:
`tesseract 0afd593
leptonica-1.74
libjpeg 8d (libjpeg-turbo 1.4.2) : libpng 1.2.54 : libtiff 4.0.6 : zlib 1.2.8
Found AVX
Found SSE
`
The text was updated successfully, but these errors were encountered: