Identifier "xgboost::kRtEps" is undefined in device code

Hello,

I’m trying to compile xgboost for the fist time in my computer. I am using Windows 10, Visual Studio 2015, CUDA 10, CMake 3.12.3, latest GIT. etc.

I have the latest code changes and I followed the instructions to the letter. But I have this error:

D:/ws/xgboost/src/objective/multiclass_obj.cu(104): error : identifier "xgboost::kRtEps" is undefined in device code [D:\ws\xgboost\build\gpuxgboost.vcxproj]
  
  1 error detected in the compilation of "C:/Users/f3o/AppData/Local/Temp/tmpxft_000024d4_00000000-15_multiclass_obj.compute_70.cpp1.ii".
  multiclass_obj.cu
  CMake Error at gpuxgboost_generated_multiclass_obj.cu.obj.Release.cmake:279 (message):
    Error generating file
    D:/ws/xgboost/build/CMakeFiles/gpuxgboost.dir/src/objective/Release/gpuxgboost_generated_multiclass_obj.cu.obj
  
  
Done Building Project "D:\ws\xgboost\build\gpuxgboost.vcxproj" (default targets) -- FAILED.

If I don’t enable CUDA, the compilation works.

Is this a bug? Or am I doing something wrong?

Thank you!

Can you checkout the branch release_0.80 and see if you get the same problem?

Good point. I switched to that branch and the compilation is OK.

Maybe it is a regression? Should I open an issue in GitHub?

Thank you

Solved. I pulled the latest code and now compilation OK too.

This is the pull request: https://github.com/dmlc/xgboost/pull/3793