Open LUOXIAO92 opened 1 year ago
@LUOXIAO92 can you try building with --verbose
, so we get a little more output?
As far as I can tell, it looks like pip was not able to connect to its repository to download build dependencies. Do I have it right @bryevdv ?
It looks plausible but agree --verbose
output is needed (as well as the exact invocation used)
@LUOXIAO92 can you try building with
--verbose
, so we get a little more output?As far as I can tell, it looks like pip was not able to connect to its repository to download build dependencies. Do I have it right @bryevdv ?
It looks plausible but agree
--verbose
output is needed (as well as the exact invocation used)
Do you mean it is necessary to connect to internet while building legate.core? I'm building this on our schools' HPC, and we have to use the debug node to load cuda module, because the login node do not have any gpu, and the debug node can not connect to internet. By the way, "If using UCX, a build configured with --enable-mt is required." is written in the BUILD.md https://github.com/nv-legate/legate.core/blob/branch-22.12/BUILD.md . I want to use UCX and add this option at install.py, but fails with "no such option: --enable-mt", what should I do?
@LUOXIAO92 By default the build uses pip/setuptools build-isolation, which is the modern, reproducible way to build Python packages. That means that setuptools
will try to install the necessary build dependencies into an isolated environment using pip
, i.e. from the internet. You can try passing --no-build-isolation
to install.py
but you will then still have to have all the necessary build dependencies installed on the machine one way or another:
requires = [
"wheel",
"ninja",
"setuptools",
"scikit-build>=0.13.1",
"cmake>=3.22.1,!=3.23.0",
]
@LUOXIAO92 By default the build uses pip/setuptools build-isolation, which is the modern, reproducible way to build Python packages. That means that
setuptools
will try to install the necessary build dependencies into an isolated environment usingpip
, i.e. from the internet. You can try passing--no-build-isolation
toinstall.py
but you will then still have to have all the necessary build dependencies installed on the machine one way or another:requires = [ "wheel", "ninja", "setuptools", "scikit-build>=0.13.1", "cmake>=3.22.1,!=3.23.0", ]
Thanks, I installed the all dependencies
$ conda list | grep -i -e wheel -e ninja -e setuptools -e scikit-build -e cmake
cmake 3.24.3 h816a3e0_0 conda-forge
ninja 1.11.0 h924138e_0 conda-forge
scikit-build 0.16.2 pyhb871ab6_0 conda-forge
setuptools 65.5.1 pyhd8ed1ab_0 conda-forge
wheel 0.38.4 pyhd8ed1ab_0 conda-forge
and ran
./install.py --max-dim 9 --network mpi --cuda --openmp --no-build-isolation --verbose
but still failed with errors.
I noticed "is required to install pyproject.toml-based projects", so I install pyproject-toml by using pypi
$ conda list | grep -i pyproject
pyproject-toml 0.0.10 pypi_0 pypi
but still failed with "pip._internal.exceptions.InstallationError: Could not build wheels for legate.core, which is required to install pyproject.toml-based projects" I also noticed include "could not find requested file: rapids-***", dose it mean I have to install rapids?
@LUOXIAO92 You don't have to install RAPIDS, but the legate.core
build makes use of some of the cmake build tools that were developed for RAPIDS. @trxcllnt will have to chime in about how or if those can be installed separately up front.
By the way, "If using UCX, a build configured with --enable-mt is required." is written in the BUILD.md https://github.com/nv-legate/legate.core/blob/branch-22.12/BUILD.md . I want to use UCX and add this option at install.py, but fails with "no such option: --enable-mt", what should I do?
I meant that the UCX you provide must be built with --enable-mt
. I added a clarification on the documentation.
@LUOXIAO92 You don't have to install RAPIDS, but the
legate.core
build makes use of some of the cmake build tools that were developed for RAPIDS. @trxcllnt will have to chime in about how or if those can be installed separately up front.
Thanks. It will be great help if legate.core can be builded without internet.
By the way, "If using UCX, a build configured with --enable-mt is required." is written in the BUILD.md https://github.com/nv-legate/legate.core/blob/branch-22.12/BUILD.md . I want to use UCX and add this option at install.py, but fails with "no such option: --enable-mt", what should I do?
I meant that the UCX you provide must be built with
--enable-mt
. I added a clarification on the documentation.
Thank you
It seems the main error is subprocess-exited-with-error. I also found the same issue. https://github.com/nv-legate/legate.core/issues/107#issue-1054642948 But in my case, I'm using python 3.9, so it should not be the problem about version of python. I also tried python 3.10, and the same error occurs.
full log of output
``` Verbose build is off Using python lib and version: /home/DENSEQCD/luoxiao/.miniconda3/envs/legate/lib/libpython3.9.so, 3.9.13 Performing a clean build to accommodate build isolation. Processing /home/DENSEQCD/luoxiao/downloads/legate.core Installing build dependencies ... error error: subprocess-exited-with-error × pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> [7 lines of output] WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('