OpenWaterAnalytics / epanet-python

python wrapper for epanet library
76 stars 40 forks source link

Errors on installation of owa-epanet #71

Closed LittleZi closed 3 years ago

LittleZi commented 3 years ago

I was trying to install owa-epanet library using the code pip install owa-epanet. But it returned the error shown below:

C:\Users\Ziyuan>pip install owa-epanet
Collecting owa-epanet
  Using cached owa-epanet-2.2.3.tar.gz (800 kB)
Building wheels for collected packages: owa-epanet
  Building wheel for owa-epanet (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'c:\users\ziyuan\appdata\local\programs\python\python37\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Ziyuan\\AppData\\Local\\Temp\\pip-install-q6ub27xj\\owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2\\setup.py'"'"'; __file__='"'"'C:\\Users\\Ziyuan\\AppData\\Local\\Temp\\pip-install-q6ub27xj\\owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\Ziyuan\AppData\Local\Temp\pip-wheel-g59ckj0l'
       cwd: C:\Users\Ziyuan\AppData\Local\Temp\pip-install-q6ub27xj\owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2\
  Complete output (153 lines):

  --------------------------------------------------------------------------------
  -- Trying "Ninja (Visual Studio 15 2017 Win64 v141)" generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  Not searching for unused variables given on the command line.
  CMake Error: CMake was unable to find a build program corresponding to "Ninja".  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.
  -- Configuring incomplete, errors occurred!
  See also "C:/Users/Ziyuan/AppData/Local/Temp/pip-install-q6ub27xj/owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2/_cmake_test_compile/build/CMakeFiles/CMakeOutput.log".
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying "Ninja (Visual Studio 15 2017 Win64 v141)" generator - failure
  --------------------------------------------------------------------------------

  --------------------------------------------------------------------------------
  -- Trying "Visual Studio 15 2017 Win64 v141" generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  Not searching for unused variables given on the command line.
  CMake Error at CMakeLists.txt:2 (PROJECT):
    Generator

      Visual Studio 15 2017 Win64

    could not find any instance of Visual Studio.

  -- Configuring incomplete, errors occurred!
  See also "C:/Users/Ziyuan/AppData/Local/Temp/pip-install-q6ub27xj/owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2/_cmake_test_compile/build/CMakeFiles/CMakeOutput.log".
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying "Visual Studio 15 2017 Win64 v141" generator - failure
  --------------------------------------------------------------------------------

  --------------------------------------------------------------------------------
  -- Trying "NMake Makefiles (Visual Studio 15 2017 Win64 v141)" generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  Not searching for unused variables given on the command line.
  -- The C compiler identification is unknown
  CMake Error at CMakeLists.txt:3 (ENABLE_LANGUAGE):
    The CMAKE_C_COMPILER:

      cl

    is not a full path and was not found in the PATH.

    To use the NMake generator with Visual C++, cmake must be run from a shell
    that can use the compiler cl from the command line.  This environment is
    unable to invoke the cl compiler.  To fix this problem, run cmake from the
    Visual Studio Command Prompt (vcvarsall.bat).

    Tell CMake where to find the compiler by setting either the environment
    variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
    the compiler, or to the compiler name if it is in the PATH.

  -- Configuring incomplete, errors occurred!
  See also "C:/Users/Ziyuan/AppData/Local/Temp/pip-install-q6ub27xj/owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2/_cmake_test_compile/build/CMakeFiles/CMakeOutput.log".
  See also "C:/Users/Ziyuan/AppData/Local/Temp/pip-install-q6ub27xj/owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2/_cmake_test_compile/build/CMakeFiles/CMakeError.log".
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying "NMake Makefiles (Visual Studio 15 2017 Win64 v141)" generator - failure
  --------------------------------------------------------------------------------

  --------------------------------------------------------------------------------
  -- Trying "NMake Makefiles JOM (Visual Studio 15 2017 Win64 v141)" generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  Not searching for unused variables given on the command line.
  -- The C compiler identification is unknown
  CMake Error at CMakeLists.txt:3 (ENABLE_LANGUAGE):
    The CMAKE_C_COMPILER:

      cl

    is not a full path and was not found in the PATH.

    To use the JOM generator with Visual C++, cmake must be run from a shell
    that can use the compiler cl from the command line.  This environment is
    unable to invoke the cl compiler.  To fix this problem, run cmake from the
    Visual Studio Command Prompt (vcvarsall.bat).

    Tell CMake where to find the compiler by setting either the environment
    variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
    the compiler, or to the compiler name if it is in the PATH.

  -- Configuring incomplete, errors occurred!
  See also "C:/Users/Ziyuan/AppData/Local/Temp/pip-install-q6ub27xj/owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2/_cmake_test_compile/build/CMakeFiles/CMakeOutput.log".
  See also "C:/Users/Ziyuan/AppData/Local/Temp/pip-install-q6ub27xj/owa-epanet_dc5c9205daa9406797dfe7c2d9957cd2/_cmake_test_compile/build/CMakeFiles/CMakeError.log".
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying "NMake Makefiles JOM (Visual Studio 15 2017 Win64 v141)" generator - failure
  --------------------------------------------------------------------------------

  ********************************************************************************
  scikit-build could not get a working generator for your system. Aborting build.

  Building windows wheels for Python 3.7 requires Microsoft Visual Studio 2017.
  Get it with "Visual Studio 2017":

    https://visualstudio.microsoft.com/vs/

  ********************************************************************************
  ----------------------------------------
  ERROR: Failed building wheel for owa-epanet

Appreicate a lot if any advices!

samhatchett commented 3 years ago

the issue is provided by the error message:

-- The C compiler identification is unknown
  CMake Error at CMakeLists.txt:3 (ENABLE_LANGUAGE):
    The CMAKE_C_COMPILER:

      cl

    is not a full path and was not found in the PATH.

    To use the NMake generator with Visual C++, cmake must be run from a shell
    that can use the compiler cl from the command line.  This environment is
    unable to invoke the cl compiler.  To fix this problem, run cmake from the
    Visual Studio Command Prompt (vcvarsall.bat).

    Tell CMake where to find the compiler by setting either the environment
    variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
    the compiler, or to the compiler name if it is in the PATH.

... This is telling you that you either don't have a compiler, or the build system cannot find it. Try the steps suggested by the error message, which are to first make sure you have a compiler (Visual Studio is great). StackOverflow has many threads on this particular kind of error, as CMake is a common tool with lots of community support.

samhatchett commented 3 years ago

looks like this particular one was fixed, given #73