elephaint/pgbm

Error message when installing full version of PGBM

Closed this issue · 8 comments

Describe the bug
I have Python 3.6.5 on a windows 10 machine. I don't use anaconda environment; so I install Python packages using pip command.

I would like to install a full version of PGBM, and following the documentation I used this command:

pip install pgbm[all] --find-links https://download.pytorch.org/whl/cu102/torch_stable.html

and I get this error message:
Collecting pgbm[all]
Could not find a version that satisfies the requirement pgbm[all] (from versions: )
No matching distribution found for pgbm[all]
You are using pip version 9.0.3, however version 21.3.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

To Reproduce
Run this pip installation command:

pip install pgbm[all] --find-links https://download.pytorch.org/whl/cu102/torch_stable.html

Expected behavior
I was expecting to have a normal installation process, in which PGBM and all its dependencies are installed

Many thanks for your help,

Ivan

Hi,

Thanks for trying to install and unfortunate that you ran into an error. You need at least Python 3.7, so that's why the installer exited. If you don't want to create another virtual environment with Python 3.7 (or higher), you could also try adding --ignore-requires-python to the installation command. However, I can't guarantee that the package will work as intended.

To be complete, I never tested under Python <3.7. Personally I would not expect any issues with Python 3.6, it's just that I haven't tested it and there might be unexpected behaviour that I am unaware of.

Hope this helps and let me know if you can't succeed with the installation,

Kind regards,

Olivier

Hi @elephaint,

Thanks for the quick response. Unfortunately, my hands are tied with Python version. I will follow manual installation instructions and hopefully everything will work fine.

Question, if I ran into issues that could be related to Python 3.6. Can I still submit these issues for you to review?

Kind regards,

Ivan

Hi @elephaint ,

I was able to install all requirements and PGBM (see attached zip file for a log of the manual installation of PGBM). Then, I ran the following script to test the installation:

C:\Users\imarroquin\Downloads\Important_Python_Libraries_VisualBuildTools\pgbm-main\pgbm-main\examples\pytorch>python example01_housing_cpu.py
No CUDA runtime is found, using CUDA_HOME='C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0'
Using C:\Users\imarroquin\AppData\Local\torch_extensions\torch_extensions\Cache as PyTorch extensions root...
Creating extension directory C:\Users\imarroquin\AppData\Local\torch_extensions\torch_extensions\Cache\split_decision...
C:\Temp\Python_3.6.5\lib\site-packages\torch\utils\cpp_extension.py:305: UserWarning: Error checking compiler version for cl: [WinError 2] The system cannot find the file specified
warnings.warn(f'Error checking compiler version for {compiler}: {error}')
Emitting ninja build file C:\Users\imarroquin\AppData\Local\torch_extensions\torch_extensions\Cache\split_decision\build.ninja...
INFO: Could not find files for the given pattern(s).
Traceback (most recent call last):
File "example01_housing_cpu.py", line 22, in
from pgbm import PGBM
File "C:\Temp\Python_3.6.5\lib\site-packages\pgbm-1.6-py3.6.egg\pgbm_init_.py", line 1, in
from .pgbm import PGBM, PGBMRegressor
File "C:\Temp\Python_3.6.5\lib\site-packages\pgbm-1.6-py3.6.egg\pgbm\pgbm.py", line 50, in
verbose=True)
File "C:\Temp\Python_3.6.5\lib\site-packages\torch\utils\cpp_extension.py", line 1092, in load
keep_intermediates=keep_intermediates)
File "C:\Temp\Python_3.6.5\lib\site-packages\torch\utils\cpp_extension.py", line 1303, in _jit_compile
is_standalone=is_standalone)
File "C:\Temp\Python_3.6.5\lib\site-packages\torch\utils\cpp_extension.py", line 1401, in _write_ninja_file_and_build_library
is_standalone=is_standalone)
File "C:\Temp\Python_3.6.5\lib\site-packages\torch\utils\cpp_extension.py", line 1834, in _write_ninja_file_to_build_library
with_cuda=with_cuda)
File "C:\Temp\Python_3.6.5\lib\site-packages\torch\utils\cpp_extension.py", line 1950, in _write_ninja_file
'cl']).decode().split('\r\n')
File "C:\Temp\Python_3.6.5\lib\subprocess.py", line 336, in check_output
**kwargs).stdout
File "C:\Temp\Python_3.6.5\lib\subprocess.py", line 418, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['where', 'cl']' returned non-zero exit status 1.

Is this error caused by the version of Python that I have?

Kind regards,

Ivan

installation_log.zip

forgot to attach the installation log!

Hi,

According to the error message, you do not have the compiler cl installed (which is a requirement when using PGBM under Windows - please see the documentation to ensure you install all the required dependencies). For Windows, this means you need to install cl, and you can verify this by typing where cl in a command line interface (which is also the error that returned - the process cannot find compiler cl at the moment).

Best,

Olivier

Hi @elephaint ,

I have already installed visual studio. But, I noticed that the path were no set in windows environment. Thanks for the hint!

Ivan

Great, hope it works now!

Also, forgot to answer your question, of course, if you run into issues, let me know! I am sure these issues will be not be caused by Python version, so it's very useful for me to know about them so that we can solve them.

Once I added the required path of visual studio to windows environment, the installation worked. Thanks for sharing the links in the installation procedure