Skip to content
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

incorrect hash in cmake ippicv when installing #5973

Closed
paul-mesnilgrente opened this issue Jan 14, 2016 · 8 comments
Closed

incorrect hash in cmake ippicv when installing #5973

paul-mesnilgrente opened this issue Jan 14, 2016 · 8 comments

Comments

@paul-mesnilgrente
Copy link

Hello,

I read this webpage : http://answers.opencv.org/question/40425/opencv-build-fails-because-i-cannot-download-icv-on-our-build-farm/ but it does not help me.

I am new in opencv, I am on ubuntu 14.04, I have done exactly this in my terminal as said on this webpage http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation :

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

git clone https://github.com/Itseez/opencv.git
cd opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

but after a long wait of downloading, I have this output :

-- ICV: Downloading ippicv_linux_20151201.tgz...
CMake Error at 3rdparty/ippicv/downloader.cmake:73 (file):
  file DOWNLOAD HASH mismatch

    for file: [/home/pauka/opencv/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/ippicv_linux_20151201.tgz]
      expected hash: [808b791a6eac9ed78d32a7666804320e]
        actual hash: [f166287239920c4a16e6f8870e15ef79]

I thought that it was an error of downloading so I retry, but hashes are always different. Why are they always different ? And where this file is located on the internet ? I do find it to download it manually (the 20151201 version).

I hope that I am not alone with this issue.

Thanks for your work 👍

@alalek
Copy link
Member

alalek commented Jan 15, 2016

The first "expected" hash should be always same (for specific OpenCV code version).
The second "actual" hash is a signature of received data. And this received data is just broken due some reasons (firewall policy restrictions / other network problems / other software problems, like legacy CMake (2.8.7+ works fine) ): you may try to open file in "mc" editor and check it, sometimes there are messages like "403 forbidden", "timeout", "connection lost".

There are some discussion for the similar problem here (but about ffmpeg): #5546 #5895

So there are two options:

  • disable this feature (-DWITH_IPP=OFF)
  • try to download these files manually and put on the right places. You can get these IPPICV files from here in the RAW mode. Script doesn't re-download file if it has right contents and it is located in the right place.

@paul-mesnilgrente
Copy link
Author

Thank you very much, I have downloaded the file and place it in the directory and the compilation has worked !
I tried on my laptop which is on ubuntu 15.10 in my university (not on my local network I mean), and it worked without to do this. I don't know if the network is has an influence...

@vojdan
Copy link

vojdan commented Jul 24, 2016

I re-ran the command and (for some strange reason) it continued

@smartcai
Copy link

You can download the file"ippicv_linux_20141027.tgz" from the website
https://sourceforge.net/projects/opencvlibrary/files/3rdparty/ippicv/
then, you can copy it and replace the old one.

@tttor
Copy link

tttor commented Jan 20, 2017

Put the ippicv_linux...tgz under
<...>/opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/

@exophoric
Copy link

This error could also mean that your CMake is not built with OpenSSL support. (It cannot resolve HTTPS addresses without the OpenSSL).

To fix this, rebuild CMake from source, but before doing so make sure to install the openssl-devel package of your distribution.

If you get hash d41d8cd98f00b204e9800998ecf8427e (which is the md5 for an empty file), that should be the problem you are facing. Unless you have internet connectivity issues.

@achaiah
Copy link

achaiah commented Feb 7, 2017

Actually, this is still a big problem as the precompiled version of ippicv_linux is built for 32-bit architectures. Even when you correctly include it with OpenCV the build errors out with:

i386 architecture of input file `../../../3rdparty/ippicv/unpack/ippicv_lnx/lib/ia32/libippicv.a(piresizenlincn_p8---ownRow1Linear16u.o)' is incompatible with i386:x86-64 output

Any ideas on what can be done here? Links to 64-bit ippicv?

Thanks

@nguyenbc
Copy link

If you get hash d41d8cd98f00b204e9800998ecf8427e (which is the md5 for an empty file), that should be the problem you are facing. Unless you have internet connectivity issues.
... Solution for this:
open the log: CMaeDownload.txt file:
for example, my PC:
#check_md5 "D:/OpenCV/opencv/sources/.cache/ippicv/0421e642bc7ad741a2236d3ec4190bdd-ippicv_2017u3_win_intel64_general_20170822.zip"
#mismatch_md5 "D:/OpenCV/opencv/sources/.cache/ippicv/0421e642bc7ad741a2236d3ec4190bdd-ippicv_2017u3_win_intel64_general_20170822.zip" "d41d8cd98f00b204e9800998ecf8427e"
Then you will rename the downloaded file to: 0421e642bc7ad741a2236d3ec4190bdd-ippicv_2017u3_win_intel64_general_20170822.zip and save to this folder.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants