rapidsai / cuml

cuML - RAPIDS Machine Learning Library
https://docs.rapids.ai/api/cuml/stable/
Apache License 2.0
4.12k stars 527 forks source link

[BUG] not find requested file rapids-cmake #5521

Open oreo-lp opened 1 year ago

oreo-lp commented 1 year ago

I am new to cuml, and when i run ./build.sh,errors are below: Describe the bug

CMake Error at CMakeLists.txt:21 (include):include could not find requested file:

rapids-cmake

CMake Error at CMakeLists.txt:22 (include):include could not find requested file:

rapids-cpm

CMake Error at CMakeLists.txt:23 (include): include could not find requested file:

rapids-cuda

CMake Error at CMakeLists.txt:24 (include):include could not find requested file:

rapids-export

CMake Error at CMakeLists.txt:25 (include): include could not find requested file:

rapids-find

Steps/Code to reproduce bug sh ./build.sh

Environment details (please complete the following information): cmake is 3.26.4 gcc is 9.4.0

bdice commented 1 year ago

@oreo-lp It seems like your system was unable to fetch the rapids-cmake code needed for those functions. Can you share the full output?

Here is the code that probably failed. It requires an internet connection to get rapids-cmake. https://github.com/rapidsai/cuml/blob/branch-23.08/cpp/CMakeLists.txt#L19 https://github.com/rapidsai/cuml/blob/branch-23.08/fetch_rapids.cmake

xuanyuxin commented 9 months ago

same here. no network error. any possible solutions? thank!

bdice commented 9 months ago

@xuanyuxin Can you share a full traceback including the commands you executed, the environment / packages installed, and the output of the command?

bionictoucan commented 9 months ago

@xuanyuxin Can you share a full traceback including the commands you executed, the environment / packages installed, and the output of the command?

I am having the same issue trying to build cuDF from source, I am running ./build.sh libcudf cudf with cmake version 3.27.7 and gcc version 9.4.0. Full traceback is shown below:

uilding wheels for collected packages: UNKNOWN
  Building wheel for UNKNOWN (PEP 517) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python /tmp/tmpn2msed6x build_wheel /tmp/tmp0bn6vgtz
       cwd: /tmp/pip-req-build-bvka149f
  Complete output (84 lines):

  --------------------------------------------------------------------------------
  -- Trying 'Ninja' generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
    Compatibility with CMake < 3.5 will be removed from a future version of
    CMake.

    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.

  Not searching for unused variables given on the command line.

  -- The C compiler identification is GNU 9.4.0
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working C compiler: /usr/bin/cc - skipped
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- The CXX compiler identification is GNU 9.4.0
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Check for working CXX compiler: /usr/bin/c++ - skipped
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Configuring done (0.5s)
  -- Generating done (0.0s)
  -- Build files have been written to: /tmp/pip-req-build-bvka149f/_cmake_test_compile/build
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying 'Ninja' generator - success
  --------------------------------------------------------------------------------

  Configuring Project
    Working directory:
      /tmp/pip-req-build-bvka149f/_skbuild/linux-aarch64-3.8/cmake-build
    Command:
      /usr/local/bin/cmake /tmp/pip-req-build-bvka149f -G Ninja -DCMAKE_MAKE_PROGRAM:FILEPATH=/usr/local/lib/python3.8/dist-packages/ninja/data/bin/ninja --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-req-build-bvka149f/_skbuild/linux-aarch64-3.8/cmake-install -DPYTHON_VERSION_STRING:STRING=3.8.10 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/local/lib/python3.8/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.8 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.8.so -DPython_EXECUTABLE:PATH=/usr/bin/python -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.8 -DPython_NumPy_INCLUDE_DIRS:PATH=/usr/lib/python3/dist-packages/numpy/core/include -DPython3_EXECUTABLE:PATH=/usr/bin/python -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.8 -DPython3_NumPy_INCLUDE_DIRS:PATH=/usr/lib/python3/dist-packages/numpy/core/include -DCMAKE_MAKE_PROGRAM:FILEPATH=/usr/local/lib/python3.8/dist-packages/ninja/data/bin/ninja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_PREFIX_PATH= -DCMAKE_LIBRARY_PATH= -DCMAKE_CUDA_ARCHITECTURES=NATIVE -DFIND_CUDF_CPP=ON

  CMake Error at CMakeLists.txt:19 (include):
    include could not find requested file:

      ../../fetch_rapids.cmake

  Not searching for unused variables given on the command line.

  CMake Error at CMakeLists.txt:20 (include):
    include could not find requested file:

      rapids-cuda

  CMake Error at CMakeLists.txt:21 (rapids_cuda_init_architectures):
    Unknown CMake command "rapids_cuda_init_architectures".

  -- Configuring incomplete, errors occurred!
  Traceback (most recent call last):
    File "/usr/local/lib/python3.8/dist-packages/skbuild/setuptools_wrap.py", line 666, in setup
      env = cmkr.configure(
    File "/usr/local/lib/python3.8/dist-packages/skbuild/cmaker.py", line 357, in configure
      raise SKBuildError(msg)

  An error occurred while configuring with CMake.
    Command:
      /usr/local/bin/cmake /tmp/pip-req-build-bvka149f -G Ninja -DCMAKE_MAKE_PROGRAM:FILEPATH=/usr/local/lib/python3.8/dist-packages/ninja/data/bin/ninja --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-req-build-bvka149f/_skbuild/linux-aarch64-3.8/cmake-install -DPYTHON_VERSION_STRING:STRING=3.8.10 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/local/lib/python3.8/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.8 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.8.so -DPython_EXECUTABLE:PATH=/usr/bin/python -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.8 -DPython_NumPy_INCLUDE_DIRS:PATH=/usr/lib/python3/dist-packages/numpy/core/include -DPython3_EXECUTABLE:PATH=/usr/bin/python -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.8 -DPython3_NumPy_INCLUDE_DIRS:PATH=/usr/lib/python3/dist-packages/numpy/core/include -DCMAKE_MAKE_PROGRAM:FILEPATH=/usr/local/lib/python3.8/dist-packages/ninja/data/bin/ninja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_PREFIX_PATH= -DCMAKE_LIBRARY_PATH= -DCMAKE_CUDA_ARCHITECTURES=NATIVE -DFIND_CUDF_CPP=ON
    Source directory:
      /tmp/pip-req-build-bvka149f
    Working directory:
      /tmp/pip-req-build-bvka149f/_skbuild/linux-aarch64-3.8/cmake-build
  Please see CMake's output for more information.

  ----------------------------------------
  ERROR: Failed building wheel for UNKNOWN
Failed to build UNKNOWN
ERROR: Could not build wheels for UNKNOWN which use PEP 517 and cannot be installed directly

The issue for me seems to be locating the fetch_rapids.cmake file which downloads the necessary RAPIDS cmake files. This occurs during the Python build after the C++ compilation has completed. ./python/cudf/CMakeLists.txt which is where the error is originating from is pointing to ../../fetch_rapids.cmake and that file does exist so I'm unsure why it is not being found.

bionictoucan commented 9 months ago

Quick update: I edited the path in CMakeLists.txt to be /home/user/cudf/fetch_rapids.cmake and that seems to have fixed that problem. At the top of the traceback it says cwd /tmp/... so it looks like something in the setup changes the directory which is why it is unable to find the fetch_rapids.cmake file.