paboyle / Grid

Data parallel C++ mathematical object library
GNU General Public License v2.0
155 stars 111 forks source link

createLattice not a thing? #146

Closed kkissell closed 6 years ago

kkissell commented 6 years ago

Still trying to build Grid on CentOS 7 instance of Google Cloud VMs. Using gcc 7 environment, but not yet going back to specifying AVX512. I see this problem with gcc 6.3 as well.

[kkissell@centhpc-64core-1 build]$ gcc --version gcc (GCC) 7.2.1 20170829 (Red Hat 7.2.1-1)

../configure --enable-precision=double --enable-simd=AVX2 --enable-comms=mpi-auto --prefix=$HOME/DiRAC/Bench

The symbols registerLattice and createLattice doesn't occur anywhere else, and it's completely obscure to me how they ought to have been generated.

../../../extras/Hadrons/Modules/MGauge/FundtoHirep.cc: In member function ‘void Grid::Hadrons::MGauge::TFundtoHirep::setup()’: ../../../extras/Hadrons/Modules/MGauge/FundtoHirep.cc:60:20: error: ‘class Grid::Hadrons::Environment’ has no member named ‘registerLattice’ env().template registerLattice(getName()); ^~~~~~~ ../../../extras/Hadrons/Modules/MGauge/FundtoHirep.cc:60:62: error: expected ‘(’ before ‘>’ token env().template registerLattice(getName()); ^ ../../../extras/Hadrons/Modules/MGauge/FundtoHirep.cc: In member function ‘void Grid::Hadrons::MGauge::TFundtoHirep::execute()’: ../../../extras/Hadrons/Modules/MGauge/FundtoHirep.cc:73:55: error: ‘class Grid::Hadrons::Environment’ has no member named ‘createLattice’; did you mean ‘createGrid’? typename Rep::LatticeField &URep = env().template createLattice(getName()); ^~~~~ createGrid ../../../extras/Hadrons/Modules/MGauge/FundtoHirep.cc:73:95: error: expected ‘(’ before ‘>’ token typename Rep::LatticeField &URep = env().template createLattice(getName());

coppolachan commented 6 years ago

It looks to me you are using a commit that is not the last in develop. Please git pull and rerun bootstrap and let me know if you still have the problem.

coppolachan commented 6 years ago

I rechecked. That was a weird error since the compilation passes on all the CI and on my machine with clang and gcc 7.2.0. I corrected to match the current semantics of Hadrons. Please get the last commit.