I’ve been trying to install this ATLAS tool on my windows computer. The instructions are very simple and straight forward:
-
clone the ATLAS git repository:
$ git clone https://gitlab.inria.fr/alta/alta.git
-
I should have all the mandatory dependencies installed:
-the SCons build system;
-a C++11 compiler, such as recent versions of GCC or Clang;
-Eigen >= 3.0 (libeigen3-dev package on Debian and derivatives; libeigen3 in MacPorts; eigen in Brew.)
Essentially, after I have those installed, I can run scons
on python and it should check to see whether the required dependencies are met, and then all compilation byproducts will go to the sources/build like the instructions says. The problem is after running the scons
command, I get the following response:
scons: Reading SConscript files ...
<<INFO>> Using config file "./configs/scons/config-windows-cl.py"
the current platform is: win32
Checking for C++ library dl... no
Checking for C++ library rt... no
Checking whether 'c++11' is supported... yes
Checking for eigen3 using pkg-config... no
Checking for C++ header file Eigen/Core... no
obtaining Eigen v3.2.7
error: downloaded file 'eigen-3.2.7.tar.gz' is inauthentic
error: got sha256 hash ea25f177c8716e7daa618533e116706d97e25c9912e016009d8a9264e39cad57 but expected 5a50a006f83480a31f1f9beabec9e91dad95138df19363ee73ccf57676f10405
eigen-3.2.7.tar.gz: downloaded file is inauthentic
The compilation process results in a eigen-3.2.7.tar.gz
file with a WRONG-HASH File
type. Moreover, when I open the file, it reads, "Repository eigen/eigen not found".
What does it mean that the eigen-3.2.7.tar.gz
file is inauthentic and why does it have a WRONG-HASH File
type? My guess is that my machine is complaining that the eigen repository is not downloaded, but I thought I installed everything correctly.
Here how I went about installing the dependencies:
Scons
I installed Scons build system by simply typing the following command in my anaconda python environment: conda install -c conda-forge scons
C++ complier
This was actually already installed on my computer a while back ago. I can’t exactly remember how it was installed, but my machine seems to recognize it on the checklist so no need to worry about that.
Eigen
To install this dependency I just simply cloned the repository from here in GitHub. The Eigen folder is find inside the alta directory(the highest level directory.
I new to this, so it could be very possible that my steps to install these dependencies were not correct. Should I set some sort of environment path? I’m wondering if I installed my eigen repository correctly. To be honest, i’m not exactly sure why the build process fail, thus the issue may be something totally different then how I installed my dependencies. However, at this point I am lost and in need of further instruction or intuition.
The link to the installation page is here . As you can see its not many instruction and they are quite simple, which makes this whole thing even more frustrating.
2
Answers
It doesn’t sound like there’s a lot wrong here… for Windows, the results look normal:
libdl
andlibrt
are linux-y things. And Windows platforms also don’t have thepkg-config
way of getting information about building with a library, so those configure results are nothing to worry about. It just sounds like the fetcher tool isn’t resilient to the thing it needs to fetch already being there. You want to look at theexternal
area as to why it’s deciding to, and then unhappy with, fetching something that’s already in place. Maybe you weren’t supposed to git clone that piece in the first place? The instructions you point to hint not: "If Eigen could not be found, it is automatically downloaded from upstream."As to your problem of not finding a
build
subdirectory, your guess is correct: scons is basically two-pass, the first pass being to read the config files and build up the dependency tree, the second being to do any required builds. Dependency fetching must be done in the first pass in this project (there are ways to code such an animal to be a build-time thing, but that’s harder so most projects don’t), so once the dep checking failed, it never went on the the build phase, thus thebuild
directory was never created.I think you need to remove your eigen download.
According to: http://alta.gforge.inria.fr/install.html