Pip install h3 завершается неудачно из-за того, что «не указана ни одна цель и не найден make-файл» - PullRequest
0 голосов
/ 16 ноября 2018

Я пытался установить привязки h3 для python сегодня на моей машине с Windows, но столкнулся с некоторыми проблемами при установке.После запуска pip install h3 я получаю следующее сообщение об ошибке:

    HEAD is now at cdd6819 Merge pull request #111 from isaacbrodsky/version-3.1.0
  + cmake -DENABLE_FORMAT=OFF -DBUILD_SHARED_LIBS=ON .
  -- Building for: Visual Studio 15 2017
  -- The C compiler identification is MSVC 19.15.26726.0
  -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.15.26726/bin/Hostx86/x86/cl.exe
  -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.15.26726/bin/Hostx86/x86/cl.exe -- works
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- Checking for stack allocation function (alloca) - Success
  -- Checking for VLA support - Failed
  CMake Warning at CMakeLists.txt:218 (message):
    clang-format was not detected, so automatic source code reformatting is
    disabled


  CMake Warning at CMakeLists.txt:230 (message):
    clang-tidy was not detected, so source code linting is disabled


  -- Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found version "1.8.14") found components:  doxygen dot
  -- Configuring done
  -- Generating done
  -- Build files have been written to: C:/Users/speic/AppData/Local/Temp/pip-install-781fg09z/h3/h3c
  + make
  make: *** No targets specified and no makefile found.  Stop.
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "C:\Users\speic\AppData\Local\Temp\pip-install-781fg09z\h3\setup.py", line 60, in <module>
      distclass=BinaryDistribution)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\site-packages\setuptools\__init__.py", line 129, in setup
      return distutils.core.setup(**attrs)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\core.py", line 148, in setup
      dist.run_commands()
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "c:\users\speic\appdata\local\programs\python\python36\lib\site-packages\wheel\bdist_wheel.py", line 202, in run
      self.run_command('build')
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "C:\Users\speic\AppData\Local\Temp\pip-install-781fg09z\h3\setup.py", line 23, in run
      install_h3(h3_version)
    File "C:\Users\speic\AppData\Local\Temp\pip-install-781fg09z\h3\setup.py", line 16, in install_h3
      'bash ./.install.sh {}'.format(h3_version), shell=True, check=True)
    File "c:\users\speic\appdata\local\programs\python\python36\lib\subprocess.py", line 418, in run
      output=stdout, stderr=stderr)
  subprocess.CalledProcessError: Command 'bash ./.install.sh v3.1.0' returned non-zero exit status 2.

Cmake, make и c compiler все установлены и добавлены в путь.Кажется, что make не может найти какой-либо make-файл, но, насколько я вижу, файлы сборки были сгенерированы успешно.

Я надеюсь, что кто-нибудь может помочь мне с установкой, так как я все еще новичок в сборкепроцесс и эти сообщения об ошибках кажутся мне довольно загадочными.

Спасибо:)

Редактировать: Я чувствую, что мне удалось решить некоторые проблемы, но каким-то образом я все еще теряюсь накак идти дальше.Мои дальнейшие действия:

  1. Я клонировал репозиторий h3-py из github
  2. Я изменил файл .install.sh следующим образом: я изменил cmake -DENABLE_FORMAT=OFF -DBUILD_SHARED_LIBS=ON . на cmake -G "Unix Makefiles" -DCMAKE_C_COMPILER="C:/MinGW/bin/gcc.exe" -DCMAKE_CXX_COMPILER="C:/MinGW/bin/g++.exe" -DENABLE_FORMAT=OFF -DBUILD_SHARED_LIBS=ON . После этого процесс сборки, кажется, работает нормально.Однако я получаю сообщение об ошибке после процесса сборки: + ls -l 'lib/libh3*' ls: cannot access 'lib/libh3*': No such file or directory И сообщение об ошибке правильное.Нет никакой директории lib, но есть файл libh3.dll в bin/directory, поэтому я попытался поменять lib с bin в .install.sh файле

ls -l bin/libh3*
cp bin/libh3* ../h3/out
if [ -e ../build ] && [ -d ../build ]; then
    LIBNAME=`ls ../build/ | grep '^lib'`
    mkdir -p ../build/$LIBNAME/h3/out
    cp bin/libh3* ../build/$LIBNAME/h3/out
fi
popd
rm -rf h3c

вместо

ls -l lib/libh3*
cp lib/libh3* ../h3/out
if [ -e ../build ] && [ -d ../build ]; then
    LIBNAME=`ls ../build/ | grep '^lib'`
    mkdir -p ../build/$LIBNAME/h3/out
    cp lib/libh3* ../build/$LIBNAME/h3/out
fi
popd
rm -rf h3c

И скрипт оболочки выполняется просто отлично.Однако я не знаю, правильно ли все, что я сделал, и как я должен действовать дальше, так как, очевидно, на этом этапе пакет h3 не установлен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...